forked from suse-edge/Factory
Compare commits
38 Commits
Author | SHA256 | Date | |
---|---|---|---|
32519595dc | |||
87c7e1be88 | |||
568d5d1590 | |||
fbd596290a | |||
ec6c4745ea | |||
856ec2ac8e | |||
7721c66ab0 | |||
cf6abb24fb | |||
602249c98d | |||
8a93aae7c5 | |||
aba448b275 | |||
09954e5818 | |||
636493adba | |||
f5cc155d16 | |||
a5633fd239 | |||
d719b5b6e5 | |||
dda8040420 | |||
dc44cb42bf | |||
ee82509ce9 | |||
bfd031153d | |||
a8bd38569b | |||
cfe2e92d13 | |||
40010f5c4f | |||
729dbefe78 | |||
6b530a91d9 | |||
996ee3b221 | |||
5c2204ba3e | |||
f1bf24e9dd | |||
4ad7e30ea7 | |||
e9b3caf318 | |||
ed9a5df069 | |||
a66325901d | |||
8b6dce500e | |||
fc3da390e9 | |||
fcbe8b9452 | |||
044e5be211 | |||
10f6ffd6c0 | |||
9ff2fc03b9 |
@ -66,14 +66,6 @@ staging_build:
|
||||
source_package: frr-k8s
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api-operator
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: kubectl
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
@ -82,10 +74,6 @@ staging_build:
|
||||
source_package: upgrade-controller
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api-provider-rke2
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: nm-configurator
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
@ -106,38 +94,18 @@ staging_build:
|
||||
source_package: hauler
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: ip-address-manager
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: baremetal-operator
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api-provider-metal3
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cdi-chart
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api-controller-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api-provider-metal3-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: metallb-chart
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api-operator-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: sriov-crd-chart
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
@ -154,10 +122,6 @@ staging_build:
|
||||
source_package: ironic-ipa-downloader-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api-provider-rke2-controlplane-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: upgrade-controller-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
@ -170,10 +134,6 @@ staging_build:
|
||||
source_package: baremetal-operator-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: cluster-api-provider-rke2-bootstrap-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: sriov-network-operator-chart
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
@ -182,10 +142,6 @@ staging_build:
|
||||
source_package: metallb-controller-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: ip-address-manager-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: metallb-speaker-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
@ -238,3 +194,19 @@ staging_build:
|
||||
source_package: kiwi-builder-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: kubevirt-chart
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: release-manifest-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: frr-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
- branch_package:
|
||||
source_package: kubectl-image
|
||||
source_project: isv:SUSE:Edge:Factory
|
||||
target_project: isv:SUSE:Edge:Factory:Staging
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%akri-chart:0.12.20
|
||||
#!BuildTag: %%IMG_PREFIX%%akri-chart:0.12.20-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%akri-chart:%%CHART_MAJOR%%.0.0_up0.12.20
|
||||
#!BuildTag: %%IMG_PREFIX%%akri-chart:%%CHART_MAJOR%%.0.0_up0.12.20-%RELEASE%
|
||||
annotations:
|
||||
catalog.cattle.io/display-name: Akri
|
||||
apiVersion: v2
|
||||
@ -8,4 +8,4 @@ description: A Helm chart for Akri
|
||||
icon: https://raw.githubusercontent.com/project-akri/akri-docs/main/art/icon/akri-icon-light.svg
|
||||
name: akri
|
||||
type: application
|
||||
version: 0.12.20
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.12.20"
|
||||
|
@ -11,5 +11,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -1,20 +1,20 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%akri-dashboard-extension-chart:1.2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%akri-dashboard-extension-chart:1.2.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%akri-dashboard-extension-chart:%%CHART_MAJOR%%.0.0_up1.2.1
|
||||
#!BuildTag: %%IMG_PREFIX%%akri-dashboard-extension-chart:%%CHART_MAJOR%%.0.0_up1.2.1-%RELEASE%
|
||||
annotations:
|
||||
catalog.cattle.io/certified: rancher
|
||||
catalog.cattle.io/display-name: Akri
|
||||
catalog.cattle.io/kube-version: '>= v1.26.0-0'
|
||||
catalog.cattle.io/kube-version: ">= v1.26.0-0"
|
||||
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||
catalog.cattle.io/os: linux
|
||||
catalog.cattle.io/permits-os: linux, windows
|
||||
catalog.cattle.io/rancher-version: '>= 2.10.0-0'
|
||||
catalog.cattle.io/rancher-version: ">= 2.10.0-0"
|
||||
catalog.cattle.io/scope: management
|
||||
catalog.cattle.io/ui-component: plugins
|
||||
catalog.cattle.io/ui-extensions-version: '>= 3.0.0'
|
||||
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||
apiVersion: v2
|
||||
appVersion: 1.2.0
|
||||
description: 'SUSE Edge: Akri extension for Rancher Dashboard'
|
||||
appVersion: 1.2.1
|
||||
description: "SUSE Edge: Akri extension for Rancher Dashboard"
|
||||
icon: https://raw.githubusercontent.com/cncf/artwork/main/projects/akri/icon/color/akri-icon-color.svg
|
||||
name: akri-dashboard-extension
|
||||
type: application
|
||||
version: 1.2.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up1.2.1"
|
||||
|
@ -11,5 +11,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -8,7 +8,7 @@ spec:
|
||||
plugin:
|
||||
name: {{ include "extension-server.fullname" . }}
|
||||
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||
endpoint: https://raw.githubusercontent.com/suse-edge/dashboard-extensions/gh-pages/extensions/akri-dashboard-extension/1.2.0
|
||||
endpoint: https://raw.githubusercontent.com/suse-edge/dashboard-extensions/gh-pages/extensions/akri-dashboard-extension/1.2.1
|
||||
noCache: {{ .Values.plugin.noCache }}
|
||||
noAuth: {{ .Values.plugin.noAuth }}
|
||||
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
@ -8,5 +8,5 @@ plugin:
|
||||
metadata:
|
||||
catalog.cattle.io/display-name: Akri
|
||||
catalog.cattle.io/rancher-version: ">= 2.10.0-0"
|
||||
catalog.cattle.io/ui-extensions-version: ">= 3.0.0"
|
||||
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||
catalog.cattle.io/kube-version: ">= v1.26.0-0"
|
||||
|
@ -1,9 +1,9 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%cdi-chart:0.4.0
|
||||
#!BuildTag: %%IMG_PREFIX%%cdi-chart:0.4.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%cdi-chart:%%CHART_MAJOR%%.0.0_up0.4.0
|
||||
#!BuildTag: %%IMG_PREFIX%%cdi-chart:%%CHART_MAJOR%%.0.0_up0.4.0-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: 1.60.1
|
||||
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: 0.4.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.4.0"
|
||||
|
@ -4,5 +4,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -1,36 +0,0 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-controller:v%%cluster-api_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-controller:%%cluster-api_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-controller:%%cluster-api_version%%-%RELEASE%
|
||||
#!BuildVersion: 15.6
|
||||
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 cluster-api shadow; 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.cluster-api
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
LABEL org.opencontainers.image.title="SLE cluster-api Container Image"
|
||||
LABEL org.opencontainers.image.description="cluster-api based on the SLE Base Container Image."
|
||||
LABEL org.opencontainers.image.version="%%cluster-api_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%%cluster-api:%%cluster-api_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 /
|
||||
RUN mv /usr/bin/cluster-api-controller /manager
|
||||
# Use uid of nonroot user (65532) because kubernetes expects numeric user when applying pod security policies
|
||||
USER 65532
|
||||
ENTRYPOINT [ "/manager" ]
|
@ -1,35 +0,0 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-operator:%%cluster-api-operator_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-operator:%%cluster-api-operator_version%%-%RELEASE%
|
||||
#!BuildVersion: 15.6
|
||||
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 cluster-api-operator shadow; 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.cluster-api-operator
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
LABEL org.opencontainers.image.title="SLE cluster-api-operator Container Image"
|
||||
LABEL org.opencontainers.image.description="cluster-api-operator based on the SLE Base Container Image."
|
||||
LABEL org.opencontainers.image.version="%%cluster-api-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%%cluster-api-operator:%%cluster-api-operator_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 /
|
||||
RUN mv /usr/bin/cluster-api-operator-controller /manager
|
||||
# Use uid of nonroot user (65532) because kubernetes expects numeric user when applying pod security policies
|
||||
USER 65532
|
||||
ENTRYPOINT [ "/manager" ]
|
@ -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">%%cluster-api-operator_version%%</param>
|
||||
<param name="package">cluster-api-operator</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,23 +0,0 @@
|
||||
<services>
|
||||
<service name="obs_scm">
|
||||
<param name="url">https://github.com/kubernetes-sigs/cluster-api-operator</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="revision">v0.12.0</param>
|
||||
<param name="version">_auto_</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
<param name="changesauthor">steven.hardy@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" />
|
||||
<service mode="buildtime" name="recompress">
|
||||
<param name="file">*.tar</param>
|
||||
<param name="compression">gz</param>
|
||||
</service>
|
||||
<service name="go_modules">
|
||||
</service>
|
||||
<service mode="buildtime" name="set_version" />
|
||||
</services>
|
@ -1,52 +0,0 @@
|
||||
#
|
||||
# spec file for package cluster-api-operator
|
||||
#
|
||||
# Copyright (c) 2023 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: cluster-api-operator
|
||||
Version: 0.12.0
|
||||
Release: 0
|
||||
Summary: Cluster API Core Controller
|
||||
License: Apache-2.0
|
||||
URL: https://github.com/kubernetes-sigs/cluster-api-operator
|
||||
Source: cluster-api-operator-%{version}.tar.gz
|
||||
Source1: vendor.tar.gz
|
||||
BuildRequires: golang(API) = 1.21
|
||||
ExcludeArch: s390
|
||||
ExcludeArch: %{ix86}
|
||||
|
||||
%description
|
||||
|
||||
Cluster API operator
|
||||
|
||||
%prep
|
||||
%autosetup -a1 -n cluster-api-operator-%{version}
|
||||
|
||||
%build
|
||||
go build \
|
||||
-mod=vendor \
|
||||
-buildmode=pie \
|
||||
-o cluster-api-operator cmd/main.go
|
||||
|
||||
%install
|
||||
install -D -m0755 cluster-api-operator %{buildroot}%{_bindir}/cluster-api-operator-controller
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{_bindir}/cluster-api-operator-controller
|
||||
|
||||
%changelog
|
@ -1,36 +0,0 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-metal3:v%%cluster-api-provider-metal3_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-metal3:%%cluster-api-provider-metal3_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-metal3:%%cluster-api-provider-metal3_version%%-%RELEASE%
|
||||
#!BuildVersion: 15.6
|
||||
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 cluster-api-provider-metal3 shadow; 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.cluster-api-provider-metal3
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
LABEL org.opencontainers.image.title="SLE cluster-api-provider-metal3 Container Image"
|
||||
LABEL org.opencontainers.image.description="cluster-api-provider-metal3 based on the SLE Base Container Image."
|
||||
LABEL org.opencontainers.image.version="%%cluster-api-provider-metal3_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%%cluster-api-provider-metal3:%%cluster-api-provider-metal3_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 /
|
||||
RUN mv /usr/bin/cluster-api-provider-metal3 /manager
|
||||
# Use uid of nonroot user (65532) because kubernetes expects numeric user when applying pod security policies
|
||||
USER 65532
|
||||
ENTRYPOINT [ "/manager" ]
|
@ -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">%%cluster-api-provider-metal3_version%%</param>
|
||||
<param name="package">cluster-api-provider-metal3</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,23 +0,0 @@
|
||||
<services>
|
||||
<service name="obs_scm">
|
||||
<param name="url">https://github.com/metal3-io/cluster-api-provider-metal3</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="revision">v1.8.2</param>
|
||||
<param name="version">_auto_</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
<param name="changesauthor">steven.hardy@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" />
|
||||
<service mode="buildtime" name="recompress">
|
||||
<param name="file">*.tar</param>
|
||||
<param name="compression">gz</param>
|
||||
</service>
|
||||
<service name="go_modules">
|
||||
</service>
|
||||
<service mode="buildtime" name="set_version" />
|
||||
</services>
|
@ -1,54 +0,0 @@
|
||||
#
|
||||
# spec file for package cluster-api-provider-metal3
|
||||
#
|
||||
# Copyright (c) 2023 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: cluster-api-provider-metal3
|
||||
Version: 1.8.2
|
||||
Release: 0
|
||||
Summary: Cluster API Infrastructure Provider for Metal3
|
||||
License: Apache-2.0
|
||||
URL: https://github.com/metal3-io/cluster-api-provider-metal3
|
||||
Source: cluster-api-provider-metal3-%{version}.tar.gz
|
||||
Source1: vendor.tar.gz
|
||||
BuildRequires: golang(API) = 1.22
|
||||
ExcludeArch: s390
|
||||
ExcludeArch: %{ix86}
|
||||
|
||||
%description
|
||||
|
||||
Cluster API Provider Metal3 is one of the providers for Cluster API and enables
|
||||
users to deploy a Cluster API based cluster on top of bare metal infrastructure
|
||||
using Metal3.
|
||||
|
||||
%prep
|
||||
%autosetup -a1 -n cluster-api-provider-metal3-%{version}
|
||||
|
||||
%build
|
||||
go build \
|
||||
-mod=vendor \
|
||||
-buildmode=pie \
|
||||
-a -ldflags '-extldflags "-static"'
|
||||
|
||||
%install
|
||||
install -D -m0755 cluster-api-provider-metal3 %{buildroot}%{_bindir}/cluster-api-provider-metal3
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{_bindir}/cluster-api-provider-metal3
|
||||
|
||||
%changelog
|
@ -1,36 +0,0 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-rke2-bootstrap:v%%cluster-api-provider-rke2_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-rke2-bootstrap:%%cluster-api-provider-rke2_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-rke2-bootstrap:%%cluster-api-provider-rke2_version%%-%RELEASE%
|
||||
#!BuildVersion: 15.6
|
||||
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 cluster-api-provider-rke2-bootstrap shadow; 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.cluster-api-provider-rke2
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
LABEL org.opencontainers.image.title="SLE cluster-api-provider-rke2 Container Image"
|
||||
LABEL org.opencontainers.image.description="cluster-api-provider-rke2 based on the SLE Base Container Image."
|
||||
LABEL org.opencontainers.image.version="%%cluster-api-provider-rke2_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%%cluster-api-provider-rke2-bootstrap:%%cluster-api-provider-rke2_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 /
|
||||
RUN mv /usr/bin/rke2-bootstrap-manager /manager
|
||||
# Use uid of nonroot user (65532) because kubernetes expects numeric user when applying pod security policies
|
||||
USER 65532
|
||||
ENTRYPOINT [ "/manager" ]
|
@ -1,36 +0,0 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-rke2-controlplane:v%%cluster-api-provider-rke2_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-rke2-controlplane:%%cluster-api-provider-rke2_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%cluster-api-provider-rke2-controlplane:%%cluster-api-provider-rke2_version%%-%RELEASE%
|
||||
#!BuildVersion: 15.6
|
||||
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 cluster-api-provider-rke2-control-plane shadow; 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.cluster-api-provider-rke2
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
LABEL org.opencontainers.image.title="SLE cluster-api-provider-rke2 Container Image"
|
||||
LABEL org.opencontainers.image.description="cluster-api-provider-rke2 based on the SLE Base Container Image."
|
||||
LABEL org.opencontainers.image.version="%%cluster-api-provider-rke2_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%%cluster-api-provider-rke2-controlplane:%%cluster-api-provider-rke2_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 /
|
||||
RUN mv /usr/bin/rke2-control-plane-manager /manager
|
||||
# Use uid of nonroot user (65532) because kubernetes expects numeric user when applying pod security policies
|
||||
USER 65532
|
||||
ENTRYPOINT [ "/manager" ]
|
@ -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">%%cluster-api-provider-rke2_version%%</param>
|
||||
<param name="package">cluster-api-provider-rke2-control-plane</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,23 +0,0 @@
|
||||
<services>
|
||||
<service name="obs_scm">
|
||||
<param name="url">https://github.com/rancher-sandbox/cluster-api-provider-rke2</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="revision">v0.8.0</param>
|
||||
<param name="version">_auto_</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
<param name="changesauthor">steven.hardy@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" />
|
||||
<service mode="buildtime" name="recompress">
|
||||
<param name="file">*.tar</param>
|
||||
<param name="compression">gz</param>
|
||||
</service>
|
||||
<service name="go_modules">
|
||||
</service>
|
||||
<service mode="buildtime" name="set_version" />
|
||||
</services>
|
@ -1,61 +0,0 @@
|
||||
#
|
||||
# spec file for package cluster-api-provider-rke2
|
||||
#
|
||||
# Copyright (c) 2023 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: cluster-api-provider-rke2
|
||||
Version: 0.8.0
|
||||
Release: 0
|
||||
Summary: Cluster API provider for RKE2
|
||||
License: Apache-2.0
|
||||
URL: https://github.com/rancher-sandbox/cluster-api-provider-rke2
|
||||
Source: cluster-api-provider-rke2-%{version}.tar.gz
|
||||
Source1: vendor.tar.gz
|
||||
BuildRequires: golang(API) = 1.22
|
||||
ExcludeArch: s390
|
||||
ExcludeArch: %{ix86}
|
||||
|
||||
%description
|
||||
|
||||
Cluster API provider for RKE2
|
||||
|
||||
%package bootstrap
|
||||
Summary: Cluster API bootstrap controller for RKE2
|
||||
%description bootstrap
|
||||
Cluster API bootstrap controller for RKE2
|
||||
|
||||
%package control-plane
|
||||
Summary: Cluster API control-plane controller for RKE2
|
||||
%description control-plane
|
||||
Cluster API control-plane controller for RKE2
|
||||
|
||||
%prep
|
||||
%autosetup -a1 -n cluster-api-provider-rke2-%{version}
|
||||
|
||||
%build
|
||||
make managers
|
||||
|
||||
%install
|
||||
install -D -m0755 bin/rke2-bootstrap-manager %{buildroot}%{_bindir}/rke2-bootstrap-manager
|
||||
install -D -m0755 bin/rke2-control-plane-manager %{buildroot}%{_bindir}/rke2-control-plane-manager
|
||||
|
||||
%files bootstrap
|
||||
%{_bindir}/rke2-bootstrap-manager
|
||||
|
||||
%files control-plane
|
||||
%{_bindir}/rke2-control-plane-manager
|
||||
|
||||
%changelog
|
@ -1,23 +0,0 @@
|
||||
<services>
|
||||
<service name="obs_scm">
|
||||
<param name="url">https://github.com/kubernetes-sigs/cluster-api</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="revision">v1.8.4</param>
|
||||
<param name="version">_auto_</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
<param name="changesauthor">steven.hardy@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" />
|
||||
<service mode="buildtime" name="recompress">
|
||||
<param name="file">*.tar</param>
|
||||
<param name="compression">gz</param>
|
||||
</service>
|
||||
<service name="go_modules">
|
||||
</service>
|
||||
<service mode="buildtime" name="set_version" />
|
||||
</services>
|
@ -1,51 +0,0 @@
|
||||
#
|
||||
# spec file for package cluster-api
|
||||
#
|
||||
# Copyright (c) 2023 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: cluster-api
|
||||
Version: 1.8.4
|
||||
Release: 0
|
||||
Summary: Cluster API Core Controller
|
||||
License: Apache-2.0
|
||||
URL: https://github.com/kubernetes-sigs/cluster-api
|
||||
Source: cluster-api-%{version}.tar.gz
|
||||
Source1: vendor.tar.gz
|
||||
BuildRequires: golang(API) = 1.22
|
||||
ExcludeArch: s390
|
||||
ExcludeArch: %{ix86}
|
||||
|
||||
%description
|
||||
|
||||
Cluster API core controller
|
||||
|
||||
%prep
|
||||
%autosetup -a1 -n cluster-api-%{version}
|
||||
|
||||
%build
|
||||
go build \
|
||||
-mod=vendor \
|
||||
-buildmode=pie \
|
||||
|
||||
%install
|
||||
install -D -m0755 cluster-api %{buildroot}%{_bindir}/cluster-api-controller
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{_bindir}/cluster-api-controller
|
||||
|
||||
%changelog
|
@ -7,10 +7,14 @@
|
||||
<param name="eval">IMG_REPO=$(rpm --macros=/root/.rpmmacros -E %img_repo)</param>
|
||||
<param name="var">IMG_REPO</param>
|
||||
<param name="file">artifacts.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_REPO=$(rpm --macros=/root/.rpmmacros -E %chart_repo)</param>
|
||||
<param name="var">CHART_REPO</param>
|
||||
<param name="eval">SUPPORT_LEVEL=$(rpm --macros=/root/.rpmmacros -E %support_level)</param>
|
||||
<param name="var">SUPPORT_LEVEL</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
metallb:
|
||||
chart: metallb-chart
|
||||
repository: %%CHART_REPO%%/3.1
|
||||
version: 0.14.9
|
||||
repository: "%%CHART_REPO%%/%%IMG_PREFIX%%"
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.14.9"
|
||||
endpoint-copier-operator:
|
||||
chart: endpoint-copier-operator-chart
|
||||
repository: %%CHART_REPO%%/3.1
|
||||
version: 0.2.1
|
||||
repository: "%%CHART_REPO%%/%%IMG_PREFIX%%"
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.2.1"
|
||||
kubernetes:
|
||||
k3s:
|
||||
selinuxPackage: k3s-selinux-1.6-1.slemicro.noarch
|
||||
@ -13,4 +13,3 @@ kubernetes:
|
||||
rke2:
|
||||
selinuxPackage: rke2-selinux
|
||||
selinuxRepository: https://rpm.rancher.io/rke2/stable/common/slemicro/noarch
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%endpoint-copier-operator-chart:0.2.1
|
||||
#!BuildTag: %%IMG_PREFIX%%endpoint-copier-operator-chart:0.2.1-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%endpoint-copier-operator-chart:%%CHART_MAJOR%%.0.0_up0.2.1
|
||||
#!BuildTag: %%IMG_PREFIX%%endpoint-copier-operator-chart:%%CHART_MAJOR%%.0.0_up0.2.1-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: v0.2.0
|
||||
description: A Helm chart for Kubernetes
|
||||
name: endpoint-copier-operator
|
||||
type: application
|
||||
version: 0.2.1
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.2.1"
|
||||
|
@ -11,5 +11,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
58
frr-image/Dockerfile
Normal file
58
frr-image/Dockerfile
Normal file
@ -0,0 +1,58 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#!BuildTag: %%IMG_PREFIX%%frr:8.4
|
||||
#!BuildTag: %%IMG_PREFIX%%frr:8.4-%RELEASE%
|
||||
#!BuildVersion: 15.5
|
||||
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 tcpdump libpcap-devel iproute2 iputils strace socat frr python3 catatonit sed util-linux; 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.frr
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
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.version="8.4"
|
||||
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%%frr:8.4-%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 /
|
||||
|
||||
#Install frr
|
||||
USER root
|
||||
|
||||
ENV PYTHONDONTWRITEBYTECODE yes
|
||||
|
||||
# frr.sh is the entry point. This script examines environment
|
||||
# variables to direct operation and configure ovn
|
||||
ADD frr.sh /root/
|
||||
ADD daemons /etc/frr
|
||||
ADD frr.conf /etc/frr
|
||||
ADD vtysh.conf /etc/frr
|
||||
|
||||
RUN chown frr:frr /etc/frr/daemons /etc/frr/frr.conf
|
||||
|
||||
RUN ln -s /usr/bin/catatonit /sbin/tini
|
||||
RUN usermod -a -G frrvty frr
|
||||
|
||||
COPY docker-start /usr/libexec/frr/docker-start
|
||||
RUN cp -r /usr/libexec/frr /usr/lib/ # required because of the different path on rhel
|
||||
|
||||
WORKDIR /root
|
||||
ENTRYPOINT ["/sbin/tini", "--"]
|
||||
|
||||
COPY docker-start /usr/lib/frr/docker-start
|
||||
RUN chmod +x /usr/lib/frr/docker-start
|
||||
CMD ["/usr/lib/frr/docker-start"]
|
@ -1,12 +1,6 @@
|
||||
<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">%%cluster-api_version%%</param>
|
||||
<param name="package">cluster-api</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>
|
82
frr-image/daemons
Normal file
82
frr-image/daemons
Normal file
@ -0,0 +1,82 @@
|
||||
# This file tells the frr package which daemons to start.
|
||||
#
|
||||
# Entries are in the format: <daemon>=(yes|no|priority)
|
||||
# 0, "no" = disabled
|
||||
# 1, "yes" = highest priority
|
||||
# 2 .. 10 = lower priorities
|
||||
#
|
||||
# For daemons which support multiple instances, a 2nd line listing
|
||||
# the instances can be added. Eg for ospfd:
|
||||
# ospfd=yes
|
||||
# ospfd_instances="1,2"
|
||||
#
|
||||
# Priorities were suggested by Dancer <dancer@zeor.simegen.com>.
|
||||
# They're used to start the FRR daemons in more than one step
|
||||
# (for example start one or two at network initialization and the
|
||||
# rest later). The number of FRR daemons being small, priorities
|
||||
# must be between 1 and 9, inclusive (or the initscript has to be
|
||||
# changed). /etc/init.d/frr then can be started as
|
||||
#
|
||||
# /etc/init.d/frr <start|stop|restart|<priority>>
|
||||
#
|
||||
# where priority 0 is the same as 'stop', priority 10 or 'start'
|
||||
# means 'start all'
|
||||
#
|
||||
# Sample configurations for these daemons can be found in
|
||||
# /usr/share/doc/frr/examples/.
|
||||
#
|
||||
# ATTENTION:
|
||||
#
|
||||
# When activation a daemon at the first time, a config file, even if it is
|
||||
# empty, has to be present *and* be owned by the user and group "frr", else
|
||||
# the daemon will not be started by /etc/init.d/frr. The permissions should
|
||||
# be u=rw,g=r,o=.
|
||||
# When using "vtysh" such a config file is also needed. It should be owned by
|
||||
# group "frrvty" and set to ug=rw,o= though. Check /etc/pam.d/frr, too.
|
||||
#
|
||||
watchfrr_enable=yes
|
||||
watchfrr_options="-r '/usr/lib/frr/frr restart %s' -s '/usr/lib/frr/frr start %s' -k '/usr/lib/frr/frr stop %s'"
|
||||
#
|
||||
zebra=yes
|
||||
bgpd=yes
|
||||
ospfd=no
|
||||
ospf6d=no
|
||||
ripd=no
|
||||
ripngd=no
|
||||
isisd=no
|
||||
pimd=no
|
||||
nhrpd=no
|
||||
eigrpd=no
|
||||
sharpd=no
|
||||
pbrd=no
|
||||
staticd=yes
|
||||
bfdd=yes
|
||||
fabricd=no
|
||||
|
||||
#
|
||||
# Command line options for the daemons
|
||||
#
|
||||
zebra_options=("-A 127.0.0.1")
|
||||
bgpd_options=("-A 127.0.0.1")
|
||||
ospfd_options=("-A 127.0.0.1")
|
||||
ospf6d_options=("-A ::1")
|
||||
ripd_options=("-A 127.0.0.1")
|
||||
ripngd_options=("-A ::1")
|
||||
isisd_options=("-A 127.0.0.1")
|
||||
pimd_options=("-A 127.0.0.1")
|
||||
nhrpd_options=("-A 127.0.0.1")
|
||||
eigrpd_options=("-A 127.0.0.1")
|
||||
sharpd_options=("-A 127.0.0.1")
|
||||
pbrd_options=("-A 127.0.0.1")
|
||||
staticd_options=("-A 127.0.0.1")
|
||||
bfdd_options=("-A 127.0.0.1")
|
||||
fabricd_options=("-A 127.0.0.1")
|
||||
|
||||
#
|
||||
# If the vtysh_enable is yes, then the unified config is read
|
||||
# and applied if it exists. If no unified frr.conf exists
|
||||
# then the per-daemon <daemon>.conf files are used)
|
||||
# If vtysh_enable is no or non-existant, the frr.conf is ignored.
|
||||
# it is highly suggested to have this set to yes
|
||||
vtysh_enable=yes
|
||||
|
4
frr-image/docker-start
Normal file
4
frr-image/docker-start
Normal file
@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
source /usr/lib/frr/frrcommon.sh
|
||||
/usr/lib/frr/watchfrr $(daemon_list)
|
53
frr-image/frr.conf
Normal file
53
frr-image/frr.conf
Normal file
@ -0,0 +1,53 @@
|
||||
frr defaults traditional
|
||||
log file /var/log/frr/frr.log
|
||||
log syslog informational
|
||||
log stdout debugging
|
||||
ipv6 forwarding
|
||||
service integrated-vtysh-config
|
||||
!
|
||||
debug bgp updates in
|
||||
debug bgp updates out
|
||||
debug bgp zebra
|
||||
!
|
||||
interface eth0
|
||||
no ipv6 nd suppress-ra
|
||||
ipv6 nd ra-interval 10
|
||||
!
|
||||
router bgp OCPASN
|
||||
bgp router-id OCPROUTERID
|
||||
bgp bestpath as-path multipath-relax
|
||||
bgp bestpath compare-routerid
|
||||
!
|
||||
neighbor OCPnodes peer-group
|
||||
neighbor OCPnodes description Internal OCP Nodes
|
||||
neighbor OCPnodes remote-as OCPASN
|
||||
neighbor OCPnodes bfd
|
||||
neighbor OCPnodes capability extended-nexthop
|
||||
!neighbor eth0 interface peer-group OCPnodes
|
||||
!neighbor OCPPEER remote-as OCPASN peer-group OCPnodes
|
||||
neighbor OCPPEER peer-group OCPnodes
|
||||
!
|
||||
address-family ipv4 unicast
|
||||
redistribute connected
|
||||
neighbor OCPnodes activate
|
||||
exit-address-family
|
||||
!
|
||||
address-family ipv6 unicast
|
||||
redistribute connected
|
||||
neighbor OCPnodes activate
|
||||
neighbor OCPnodes nexthop-local unchanged
|
||||
exit-address-family
|
||||
!
|
||||
!
|
||||
bfd
|
||||
peer OCPPEER vrf default interface eth0
|
||||
receive-interval 2000
|
||||
transmit-interval 2000
|
||||
echo-mode
|
||||
echo-interval 3000
|
||||
no shutdown
|
||||
exit
|
||||
!
|
||||
line vty
|
||||
!
|
||||
|
124
frr-image/frr.sh
Normal file
124
frr-image/frr.sh
Normal file
@ -0,0 +1,124 @@
|
||||
#!/bin/bash
|
||||
#set -euo pipefail
|
||||
|
||||
# Enable verbose shell output if FRR_SH_VERBOSE is set to 'true'
|
||||
if [[ "${FRR_SH_VERBOSE:-}" == "true" ]]; then
|
||||
set -x
|
||||
fi
|
||||
|
||||
# The argument to the command is the operation to be performed
|
||||
# frr-node display display_env
|
||||
# a cmd must be provided, there is no default
|
||||
cmd=${1:-""}
|
||||
|
||||
# The frr user id, by default it is going to be frr:frr
|
||||
frr_user_id=${FRR_USER_ID:-""}
|
||||
|
||||
# frr options
|
||||
frr_options=${FRR_OPTIONS:-""}
|
||||
|
||||
# This script is the entrypoint to the image.
|
||||
# frr.sh version (update when API between daemonset and script changes - v.x.y)
|
||||
frr_version="3"
|
||||
|
||||
# The daemonset version must be compatible with this script.
|
||||
# The default when FRR_DAEMONSET_VERSION is not set is version 3
|
||||
frr_daemonset_version=${FRR_DAEMONSET_VERSION:-"3"}
|
||||
|
||||
# hostname is the host's hostname when using host networking,
|
||||
# This is useful on the master
|
||||
# otherwise it is the container ID (useful for debugging).
|
||||
frr_pod_host=${K8S_NODE:-$(hostname)}
|
||||
|
||||
# The ovs user id, by default it is going to be root:root
|
||||
frr_user_id=${FRR_USER_ID:-""}
|
||||
|
||||
# frr options
|
||||
frr_options=${FRR_OPTIONS:-""}
|
||||
|
||||
# frr.conf variables
|
||||
ocp_asn=${OCPASN:-65000}
|
||||
ocp_routerid=${OCPROUTERID:-"10.10.10.1"}
|
||||
ocp_peer=${OCPPEER:-"10.10.10.1"}
|
||||
|
||||
FRR_ETCDIR=/etc/frr
|
||||
FRR_RUNDIR=/var/run/frr
|
||||
FRR_LOGDIR=/var/log/frr
|
||||
|
||||
# =========================================
|
||||
|
||||
setup_frr_permissions() {
|
||||
chown -R ${frr_user_id} ${FRR_RUNDIR}
|
||||
chown -R ${frr_user_id} ${FRR_LOGDIR}
|
||||
chown -R ${frr_user_id} ${FRR_ETCDIR}
|
||||
}
|
||||
|
||||
# =========================================
|
||||
|
||||
display_version() {
|
||||
echo " =================== hostname: ${frr_pod_host}"
|
||||
echo " =================== daemonset version ${frr_daemonset_version}"
|
||||
if [[ -f /root/git_info ]]; then
|
||||
disp_ver=$(cat /root/git_info)
|
||||
return
|
||||
fi
|
||||
}
|
||||
|
||||
display_env() {
|
||||
echo FRR_USER_ID ${frr_user_id}
|
||||
echo FRR_OPTIONS ${frr_options}
|
||||
echo frr.sh version ${frr_version}
|
||||
echo ocp_asn ${ocp_asn}
|
||||
echo ocp_routerid ${ocp_routerid}
|
||||
echo ocp_peer ${ocp_peer}
|
||||
}
|
||||
|
||||
# frr-node - all nodes
|
||||
frr-node() {
|
||||
trap 'kill $(jobs -p) ; exit 0' TERM
|
||||
rm -f ${FRR_RUNDIR}/frr.pid
|
||||
echo "=============== frr-node ========== update frr.conf"
|
||||
sed -i "s/OCPASN/$ocp_asn/" /etc/frr/frr.conf
|
||||
sed -i "s/OCPPEER/$ocp_peer/" /etc/frr/frr.conf
|
||||
sed -i "s/OCPROUTERID/$ocp_routerid/" /etc/frr/frr.conf
|
||||
|
||||
#chown -R frr:frr /etc/frr
|
||||
chown -R frr:frr ${FRR_RUNDIR}
|
||||
echo "=============== frr-node ========== starting"
|
||||
# /usr/lib/frr/frrinit.sh start
|
||||
# bash -x /usr/lib/frr/frrinit.sh start
|
||||
bash -x
|
||||
/usr/lib/frr/frrinit.sh start
|
||||
frrResult=$?
|
||||
echo "=============== frrinit result is ${frrResult} "
|
||||
|
||||
# Sleep forever
|
||||
exec tail -f /dev/null
|
||||
}
|
||||
|
||||
echo "================== frr.sh --- version: ${frr_version} ================"
|
||||
|
||||
display_version
|
||||
|
||||
display_env
|
||||
|
||||
case ${cmd} in
|
||||
"frr-node")
|
||||
frr-node
|
||||
;;
|
||||
"display_env")
|
||||
display_env
|
||||
exit 0
|
||||
;;
|
||||
"display")
|
||||
display
|
||||
exit 0
|
||||
;;
|
||||
*)
|
||||
echo "invalid command ${cmd}"
|
||||
echo "valid v3 commands: frr-node display_env display "
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
0
frr-image/vtysh.conf
Normal file
0
frr-image/vtysh.conf
Normal file
@ -1,36 +0,0 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%ip-address-manager:v%%ip-address-manager_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%ip-address-manager:%%ip-address-manager_version%%
|
||||
#!BuildTag: %%IMG_PREFIX%%ip-address-manager:%%ip-address-manager_version%%-%RELEASE%
|
||||
#!BuildVersion: 15.6
|
||||
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 ip-address-manager shadow; 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.ip-address-manager
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
LABEL org.opencontainers.image.title="SLE ip-address-manager Container Image"
|
||||
LABEL org.opencontainers.image.description="ip-address-manager based on the SLE Base Container Image."
|
||||
LABEL org.opencontainers.image.version="%%ip-address-manager_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%%ip-address-manager:%%ip-address-manager_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 /
|
||||
RUN mv /usr/bin/ip-address-manager /manager
|
||||
# Use uid of nonroot user (65532) because kubernetes expects numeric user when applying pod security policies
|
||||
USER 65532
|
||||
ENTRYPOINT [ "/manager" ]
|
@ -1,23 +0,0 @@
|
||||
<services>
|
||||
<service name="obs_scm">
|
||||
<param name="url">https://github.com/metal3-io/ip-address-manager</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="revision">v1.8.1</param>
|
||||
<param name="version">_auto_</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
<param name="changesauthor">steven.hardy@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" />
|
||||
<service mode="buildtime" name="recompress">
|
||||
<param name="file">*.tar</param>
|
||||
<param name="compression">gz</param>
|
||||
</service>
|
||||
<service name="go_modules">
|
||||
</service>
|
||||
<service mode="buildtime" name="set_version" />
|
||||
</services>
|
@ -1,51 +0,0 @@
|
||||
#
|
||||
# spec file for package ip-address-manager
|
||||
#
|
||||
# Copyright (c) 2023 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: ip-address-manager
|
||||
Version: 1.8.1
|
||||
Release: 0
|
||||
Summary: Metal3 IPAM controller
|
||||
License: Apache-2.0
|
||||
URL: https://github.com/metal3-io/ip-address-manager
|
||||
Source: ip-address-manager-%{version}.tar.gz
|
||||
Source1: vendor.tar.gz
|
||||
BuildRequires: golang(API) = 1.22
|
||||
ExcludeArch: s390
|
||||
ExcludeArch: %{ix86}
|
||||
|
||||
%description
|
||||
|
||||
Metal3 IPAM controller
|
||||
|
||||
%prep
|
||||
%autosetup -a1 -n ip-address-manager-%{version}
|
||||
|
||||
%build
|
||||
go build \
|
||||
-mod=vendor \
|
||||
-buildmode=pie \
|
||||
|
||||
%install
|
||||
install -D -m0755 ip-address-manager %{buildroot}%{_bindir}/ip-address-manager
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{_bindir}/ip-address-manager
|
||||
|
||||
%changelog
|
Binary file not shown.
@ -1,5 +1,6 @@
|
||||
#!BuildTag: kiwi-builder:10.1
|
||||
FROM registry.suse.com/bci/kiwi:10.1.10
|
||||
#!BuildTag: %%IMG_PREFIX%%kiwi-builder:10.1.16.0
|
||||
#!BuildTag: %%IMG_PREFIX%%kiwi-builder:10.1.16.0-%RELEASE%
|
||||
FROM registry.suse.com/bci/kiwi:10.1.16
|
||||
MAINTAINER SUSE LLC (https://www.suse.com/)
|
||||
|
||||
# Define labels according to https://en.opensuse.org/Building_derived_containers
|
||||
@ -11,7 +12,7 @@ LABEL org.opencontainers.image.version="%PACKAGE_VERSION%"
|
||||
LABEL org.opencontainers.image.url="https://www.suse.com/solutions/edge-computing/"
|
||||
LABEL org.opencontainers.image.created="%BUILDTIME%"
|
||||
LABEL org.opencontainers.image.vendor="SUSE LLC"
|
||||
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%kiwi-builder:10.1"
|
||||
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%kiwi-builder:10.1.16.0"
|
||||
LABEL org.openbuildservice.disturl="%DISTURL%"
|
||||
LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%"
|
||||
LABEL com.suse.eula="SUSE Combined EULA February 2024"
|
||||
@ -20,10 +21,6 @@ LABEL com.suse.image-type="application"
|
||||
LABEL com.suse.release-stage="released"
|
||||
# endlabelprefix
|
||||
|
||||
# Install required packages for Kiwi to function as expected
|
||||
# Should be provided via https://github.com/SUSE/BCI-dockerfile-generator/pull/1770
|
||||
# RUN zypper in -y gawk && zypper clean -a
|
||||
|
||||
# Configure Kiwi to use kpartx
|
||||
RUN echo -e "mapper:\n - part_mapper: kpartx" > /etc/kiwi.yml
|
||||
|
||||
|
@ -8,32 +8,40 @@ Please ensure that you're running this on a registered SLE Micro 6.0 system, and
|
||||
|
||||
Next, download the podman image:
|
||||
|
||||
# podman pull %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10
|
||||
# podman pull %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0
|
||||
|
||||
Make a local output directory (where the images will reside):
|
||||
|
||||
# mkdir output
|
||||
|
||||
Then, to build a standard "Base" image, run the following in podman:
|
||||
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image
|
||||
|
||||
To build a "Base" SelfInstall ISO, you can add additional flags, for example:
|
||||
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Base-SelfInstall
|
||||
|
||||
Then, to build a standard "Default" image, run the following in podman:
|
||||
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10 build-image
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Default
|
||||
|
||||
To build a SelfInstall ISO, you can add additional flags, for example:
|
||||
To build a "Default" SelfInstall ISO, you can add additional flags, for example:
|
||||
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10 build-image -p Default-SelfInstall
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Default-SelfInstall
|
||||
|
||||
To build an image with a RealTime kernel, e.g. a RAW disk image ("Default"), use the following:
|
||||
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10 build-image -p Base-RT
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Base-RT
|
||||
|
||||
To build an image that supports a large block/sectorsize (4096), use the "-b" flag, for example:
|
||||
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10 build-image -p Default-SelfInstall -b
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Default-SelfInstall -b
|
||||
|
||||
# mkdir mydefs/
|
||||
# cp /path/to/SL-Micro.kiwi mydefs/
|
||||
# cp /path/to/config.sh mydefs/
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -v ./mydefs/:/micro-sdk/defs/ -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10 build-image
|
||||
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -v ./mydefs/:/micro-sdk/defs/ -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image
|
||||
|
||||
All output will be in the local $(pwd)/output directory, for example:
|
||||
|
||||
|
@ -21,43 +21,45 @@
|
||||
#
|
||||
|
||||
# Set image build defaults, blocksize is an empty string
|
||||
PROFILE="Default"
|
||||
PROFILE="Base"
|
||||
LARGEBLOCK=false
|
||||
|
||||
# Print usage
|
||||
usage(){
|
||||
cat <<-EOF
|
||||
==============================
|
||||
SLE Micro 6.0 Kiwi SDK Builder
|
||||
==============================
|
||||
cat <<-EOF
|
||||
==============================
|
||||
SLE Micro 6.0 Kiwi SDK Builder
|
||||
==============================
|
||||
|
||||
Usage: ${0} [-p <profile>] [-b]
|
||||
Usage: ${0} [-p <profile>] [-b]
|
||||
|
||||
Profile Options (-p):
|
||||
* Default: RAW Disk Image with kernel-default
|
||||
* Default-SelfInstall: SelfInstall ISO with kernel-default
|
||||
* Base-RT: RAW Disk Image with kernel-rt
|
||||
* Base-RT-SelfInstall: SelfInstall ISO with kernel-rt
|
||||
Profile Options (-p):
|
||||
* Base: RAW Disk Image with podman
|
||||
* Base-SelfInstall: SelfInstall ISO with podman
|
||||
* Default: RAW Disk Image with podman and kvm
|
||||
* Default-SelfInstall: SelfInstall ISO with podman and kvm
|
||||
* Base-RT: RAW Disk Image with kernel-rt
|
||||
* Base-RT-SelfInstall: SelfInstall ISO with kernel-rt
|
||||
|
||||
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.
|
||||
|
||||
NOTE: If both options are omitted, the "Default" profile with a standard "512" blocksize is used.
|
||||
EOF
|
||||
NOTE: If both options are omitted, the "Base" profile with a standard "512" blocksize is used.
|
||||
EOF
|
||||
}
|
||||
|
||||
# Grab CLI options and handle
|
||||
while getopts 'p:bh' OPTION; do
|
||||
case "${OPTION}" in
|
||||
p)
|
||||
PROFILE="${OPTARG}"
|
||||
;;
|
||||
b)
|
||||
LARGEBLOCK=true
|
||||
;;
|
||||
?)
|
||||
usage && exit 2
|
||||
;;
|
||||
esac
|
||||
case "${OPTION}" in
|
||||
p)
|
||||
PROFILE="${OPTARG}"
|
||||
;;
|
||||
b)
|
||||
LARGEBLOCK=true
|
||||
;;
|
||||
?)
|
||||
usage && exit 2
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# To avoid wasting time, perform the loop creation test first, and exit with a warning to re-run.
|
||||
@ -88,4 +90,4 @@ if [ $RESULT -eq 0 ]; then
|
||||
echo -e "\n\nINFO: Image build successful, generated images are available in the 'output' directory."
|
||||
else
|
||||
echo -e "\n\nERROR: Failed to build the image, please see above logs."
|
||||
fi
|
||||
fi
|
||||
|
34
kubectl-image/Dockerfile
Normal file
34
kubectl-image/Dockerfile
Normal file
@ -0,0 +1,34 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%kubectl:1.30.3
|
||||
#!BuildTag: %%IMG_PREFIX%%kubectl:1.30.3-%RELEASE%
|
||||
#!BuildVersion: 15.6
|
||||
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 kubectl; 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.kubectl
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
LABEL org.opencontainers.image.title="SLE kubectl image"
|
||||
LABEL org.opencontainers.image.description="kubectl on the SLE Base Container Image."
|
||||
LABEL org.opencontainers.image.version="1.30.3"
|
||||
LABEL org.opencontainers.image.url="https://www.suse.com/solutions/edge-computing/"
|
||||
LABEL org.opencontainers.image.created="%BUILDTIME%"
|
||||
LABEL org.opencontainers.image.vendor="SUSE LLC"
|
||||
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%kubectl:1.30.3-%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 ["/usr/bin/kubectl"]
|
@ -1,12 +1,5 @@
|
||||
<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">%%ip-address-manager_version%%</param>
|
||||
<param name="package">ip-address-manager</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>
|
@ -1,6 +1,6 @@
|
||||
%global debug_package %{nil}
|
||||
|
||||
Name: kubectl-1303
|
||||
Name: kubectl
|
||||
Version: 1.30.3
|
||||
Release: 0
|
||||
Summary: Command-line utility for interacting with a Kubernetes cluster
|
||||
|
9
kubevirt-chart/Chart.yaml
Normal file
9
kubevirt-chart/Chart.yaml
Normal file
@ -0,0 +1,9 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%kubevirt-chart:%%CHART_MAJOR%%.0.0_up0.4.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%kubevirt-chart:%%CHART_MAJOR%%.0.0_up0.4.0
|
||||
apiVersion: v2
|
||||
appVersion: 1.3.1
|
||||
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.4.0"
|
10
kubevirt-chart/_service
Normal file
10
kubevirt-chart/_service
Normal file
@ -0,0 +1,10 @@
|
||||
<services>
|
||||
<service mode="buildtime" name="kiwi_metainfo_helper"/>
|
||||
<service name="replace_using_env" mode="buildtime">
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
1
kubevirt-chart/app-readme.md
Normal file
1
kubevirt-chart/app-readme.md
Normal file
@ -0,0 +1 @@
|
||||
KubeVirt is a virtual machine management add-on for Kubernetes. The aim is to provide a common ground for virtualization solutions on top of Kubernetes.
|
6586
kubevirt-chart/crds/kubevirt.yaml
Normal file
6586
kubevirt-chart/crds/kubevirt.yaml
Normal file
File diff suppressed because it is too large
Load Diff
2
kubevirt-chart/templates/NOTES.txt
Normal file
2
kubevirt-chart/templates/NOTES.txt
Normal file
@ -0,0 +1,2 @@
|
||||
Verify that all KubeVirt components are installed correctly:
|
||||
kubectl get all -n {{ .Release.Namespace }}
|
62
kubevirt-chart/templates/_helpers.tpl
Normal file
62
kubevirt-chart/templates/_helpers.tpl
Normal file
@ -0,0 +1,62 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "kubevirt.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "kubevirt.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "kubevirt.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "kubevirt.labels" -}}
|
||||
helm.sh/chart: {{ include "kubevirt.chart" . }}
|
||||
{{ include "kubevirt.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "kubevirt.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "kubevirt.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "kubevirt.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "kubevirt.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
47
kubevirt-chart/templates/_hooks.tpl
Normal file
47
kubevirt-chart/templates/_hooks.tpl
Normal file
@ -0,0 +1,47 @@
|
||||
{{/* Hook annotations */}}
|
||||
{{- define "kubevirt.hook.annotations" -}}
|
||||
annotations:
|
||||
"helm.sh/hook": {{ .hookType }}
|
||||
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded
|
||||
"helm.sh/hook-weight": {{ .hookWeight | quote }}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Namespace modifying hook annotations */}}
|
||||
{{- define "kubevirt.namespaceHook.annotations" -}}
|
||||
{{ template "kubevirt.hook.annotations" merge (dict "hookType" "pre-install") . }}
|
||||
{{- end -}}
|
||||
|
||||
{{/* CRD upgrading hook annotations */}}
|
||||
{{- define "kubevirt.crdUpgradeHook.annotations" -}}
|
||||
{{ template "kubevirt.hook.annotations" merge (dict "hookType" "pre-upgrade") . }}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Custom resource uninstalling hook annotations */}}
|
||||
{{- define "kubevirt.crUninstallHook.annotations" -}}
|
||||
{{ template "kubevirt.hook.annotations" merge (dict "hookType" "pre-delete") . }}
|
||||
{{- end -}}
|
||||
|
||||
{{/* CRD uninstalling hook annotations */}}
|
||||
{{- define "kubevirt.crdUninstallHook.annotations" -}}
|
||||
{{ template "kubevirt.hook.annotations" merge (dict "hookType" "post-delete") . }}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Namespace modifying hook name */}}
|
||||
{{- define "kubevirt.namespaceHook.name" -}}
|
||||
{{ include "kubevirt.fullname" . }}-namespace-modify
|
||||
{{- end }}
|
||||
|
||||
{{/* CRD upgrading hook name */}}
|
||||
{{- define "kubevirt.crdUpgradeHook.name" -}}
|
||||
{{ include "kubevirt.fullname" . }}-crd-upgrade
|
||||
{{- end }}
|
||||
|
||||
{{/* Custom resource uninstalling hook name */}}
|
||||
{{- define "kubevirt.crUninstallHook.name" -}}
|
||||
{{ include "kubevirt.fullname" . }}-uninstall
|
||||
{{- end }}
|
||||
|
||||
{{/* CRD uninstalling hook name */}}
|
||||
{{- define "kubevirt.crdUninstallHook.name" -}}
|
||||
{{ include "kubevirt.fullname" . }}-crd-uninstall
|
||||
{{- end }}
|
55
kubevirt-chart/templates/crd-uninstall-hooks.yaml
Normal file
55
kubevirt-chart/templates/crd-uninstall-hooks.yaml
Normal file
@ -0,0 +1,55 @@
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
{{ template "kubevirt.crdUninstallHook.annotations" (dict "hookWeight" 1) }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
{{ template "kubevirt.crdUninstallHook.annotations" (dict "hookWeight" 1) }}
|
||||
rules:
|
||||
- apiGroups: [ "apiextensions.k8s.io" ]
|
||||
resources: [ "customresourcedefinitions" ]
|
||||
resourceNames:
|
||||
- "kubevirts.kubevirt.io"
|
||||
verbs: [ "delete" ]
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
{{ template "kubevirt.crdUninstallHook.annotations" (dict "hookWeight" 2) }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
{{ template "kubevirt.crdUninstallHook.annotations" (dict "hookWeight" 3) }}
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
name: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
spec:
|
||||
serviceAccountName: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
restartPolicy: {{ .Values.hookRestartPolicy }}
|
||||
containers:
|
||||
- name: {{ template "kubevirt.crdUninstallHook.name" . }}
|
||||
image: {{ .Values.hookImage }}
|
||||
args:
|
||||
- delete
|
||||
- customresourcedefinitions
|
||||
- kubevirts.kubevirt.io
|
||||
securityContext:
|
||||
{{- toYaml .Values.hookSecurityContext | nindent 12 }}
|
80
kubevirt-chart/templates/crd-upgrade-hooks.yaml
Normal file
80
kubevirt-chart/templates/crd-upgrade-hooks.yaml
Normal file
@ -0,0 +1,80 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: kubevirt-crd-manifest
|
||||
{{ template "kubevirt.crdUpgradeHook.annotations" (dict "hookWeight" 1) }}
|
||||
data:
|
||||
crd: |-
|
||||
{{ $.Files.Get "crds/kubevirt.yaml" | nindent 4 }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
{{ template "kubevirt.crdUpgradeHook.annotations" (dict "hookWeight" 2) }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
{{ template "kubevirt.crdUpgradeHook.annotations" (dict "hookWeight" 2) }}
|
||||
rules:
|
||||
- apiGroups: [ "" ]
|
||||
resources: [ "configmaps" ]
|
||||
resourceNames:
|
||||
- "kubevirt-crd-manifest"
|
||||
verbs: [ "get" ]
|
||||
- apiGroups: [ "apiextensions.k8s.io" ]
|
||||
resources: [ "customresourcedefinitions" ]
|
||||
resourceNames:
|
||||
- "kubevirts.kubevirt.io"
|
||||
verbs: [ "get", "patch" ]
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
{{ template "kubevirt.crdUpgradeHook.annotations" (dict "hookWeight" 3) }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
{{ template "kubevirt.crdUpgradeHook.annotations" (dict "hookWeight" 4) }}
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
name: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
spec:
|
||||
serviceAccountName: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
restartPolicy: {{ .Values.hookRestartPolicy }}
|
||||
containers:
|
||||
- name: {{ template "kubevirt.crdUpgradeHook.name" . }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.hookSecurityContext | nindent 12 }}
|
||||
image: {{ .Values.hookImage }}
|
||||
args:
|
||||
- apply
|
||||
- -f
|
||||
- /etc/manifests/crd.yaml
|
||||
volumeMounts:
|
||||
- name: crd-volume
|
||||
mountPath: /etc/manifests
|
||||
volumes:
|
||||
- name: crd-volume
|
||||
configMap:
|
||||
name: kubevirt-crd-manifest
|
||||
items:
|
||||
- key: crd
|
||||
path: crd.yaml
|
1361
kubevirt-chart/templates/kubevirt-operator.yaml
Normal file
1361
kubevirt-chart/templates/kubevirt-operator.yaml
Normal file
File diff suppressed because it is too large
Load Diff
71
kubevirt-chart/templates/kubevirt-uninstall-hooks.yaml
Normal file
71
kubevirt-chart/templates/kubevirt-uninstall-hooks.yaml
Normal file
@ -0,0 +1,71 @@
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
{{ template "kubevirt.crUninstallHook.annotations" (dict "hookWeight" 1) }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
{{ template "kubevirt.crUninstallHook.annotations" (dict "hookWeight" 1) }}
|
||||
rules:
|
||||
- apiGroups: [ "kubevirt.io" ]
|
||||
resources: [ "kubevirts" ]
|
||||
resourceNames:
|
||||
- "kubevirt"
|
||||
verbs: [ "get", "list", "delete" ]
|
||||
- apiGroups: [ "apps" ]
|
||||
resources: [ "deployments", "daemonsets" ]
|
||||
verbs: [ "get", "list" ]
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
{{ template "kubevirt.crUninstallHook.annotations" (dict "hookWeight" 2) }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
roleRef:
|
||||
kind: Role
|
||||
name: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
{{ template "kubevirt.crUninstallHook.annotations" (dict "hookWeight" 3) }}
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
name: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
spec:
|
||||
serviceAccountName: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
restartPolicy: {{ .Values.hookRestartPolicy }}
|
||||
containers:
|
||||
- name: {{ template "kubevirt.crUninstallHook.name" . }}
|
||||
image: {{ .Values.hookImage }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.hookSecurityContext | nindent 12 }}
|
||||
args:
|
||||
- delete
|
||||
- kubevirt
|
||||
- kubevirt
|
||||
- name: {{ template "kubevirt.crUninstallHook.name" . }}-cleanup
|
||||
image: {{ .Values.hookImage }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.hookSecurityContext | nindent 12 }}
|
||||
args:
|
||||
- wait
|
||||
- --for=delete
|
||||
- deployments/virt-api
|
||||
- deployments/virt-controller
|
||||
- daemonsets/virt-handler
|
||||
- --timeout=60s
|
32
kubevirt-chart/templates/kubevirt.yaml
Normal file
32
kubevirt-chart/templates/kubevirt.yaml
Normal file
@ -0,0 +1,32 @@
|
||||
apiVersion: kubevirt.io/v1
|
||||
kind: KubeVirt
|
||||
metadata:
|
||||
name: kubevirt
|
||||
namespace: {{ .Release.Namespace }}
|
||||
spec:
|
||||
{{- with .Values.kubevirt.configuration }}
|
||||
configuration:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.kubevirt.customizeComponents }}
|
||||
customizeComponents:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
imagePullPolicy: {{ .Values.kubevirt.imagePullPolicy }}
|
||||
{{- with .Values.kubevirt.infra }}
|
||||
infra:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.kubevirt.uninstallStrategy }}
|
||||
uninstallStrategy: {{ .Values.kubevirt.uninstallStrategy }}
|
||||
{{- end }}
|
||||
{{- with .Values.kubevirt.workloadUpdateStrategy }}
|
||||
workloadUpdateStrategy:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.kubevirt.monitorNamespace }}
|
||||
monitorNamespace: {{ .Values.kubevirt.monitorNamespace }}
|
||||
{{- end }}
|
||||
{{- if .Values.kubevirt.monitorAccount }}
|
||||
monitorAccount: {{ .Values.kubevirt.monitorAccount }}
|
||||
{{- end }}
|
60
kubevirt-chart/templates/namespace-hooks.yaml
Normal file
60
kubevirt-chart/templates/namespace-hooks.yaml
Normal file
@ -0,0 +1,60 @@
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
{{ template "kubevirt.namespaceHook.annotations" (dict "hookWeight" 1) }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
{{ template "kubevirt.namespaceHook.annotations" (dict "hookWeight" 1) }}
|
||||
rules:
|
||||
- apiGroups: [ "" ]
|
||||
resources: [ "namespaces" ]
|
||||
resourceNames:
|
||||
- {{ .Release.Namespace | quote }}
|
||||
verbs: [ "get", "patch" ]
|
||||
- apiGroups: [ "management.cattle.io" ] # Rancher
|
||||
resources: [ "projects" ]
|
||||
verbs: [ "updatepsa" ]
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
{{ template "kubevirt.namespaceHook.annotations" (dict "hookWeight" 2) }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
{{ template "kubevirt.namespaceHook.annotations" (dict "hookWeight" 3) }}
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
name: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
spec:
|
||||
serviceAccountName: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
restartPolicy: {{ .Values.hookRestartPolicy }}
|
||||
containers:
|
||||
- name: {{ template "kubevirt.namespaceHook.name" . }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.hookSecurityContext | nindent 12 }}
|
||||
image: {{ .Values.hookImage }}
|
||||
args:
|
||||
- label
|
||||
- namespace
|
||||
- {{ .Release.Namespace }}
|
||||
- kubevirt.io=
|
||||
- pod-security.kubernetes.io/enforce=privileged
|
34
kubevirt-chart/values.yaml
Normal file
34
kubevirt-chart/values.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
operator:
|
||||
image: registry.suse.com/suse/sles/15.6/virt-operator
|
||||
version: 1.3.1-150600.5.9.1
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
kubevirt:
|
||||
# Holds kubevirt configurations. Same as the virt-configMap.
|
||||
configuration: {}
|
||||
customizeComponents: {}
|
||||
# The ImagePullPolicy to use.
|
||||
imagePullPolicy: IfNotPresent
|
||||
# Selectors and tolerations that should apply to KubeVirt infrastructure components.
|
||||
infra: {}
|
||||
# Specifies if KubeVirt can be deleted if workloads are still present.
|
||||
# This is mainly a precaution to avoid accidental data loss.
|
||||
uninstallStrategy: ""
|
||||
# WorkloadUpdateStrategy defines at the cluster level how to handle automated workload updates.
|
||||
workloadUpdateStrategy: {}
|
||||
# Optionally enable ServiceMonitor for prometheus, see
|
||||
# https://kubevirt.io/user-guide/user_workloads/component_monitoring/
|
||||
monitorAccount: ""
|
||||
monitorNamespace: ""
|
||||
|
||||
hookImage: rancher/kubectl:v1.30.2
|
||||
hookRestartPolicy: OnFailure
|
||||
hookSecurityContext:
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
allowPrivilegeEscalation: false
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
@ -1,5 +1,5 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%kubevirt-dashboard-extension-chart:1.2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%kubevirt-dashboard-extension-chart:1.2.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%kubevirt-dashboard-extension-chart:%%CHART_MAJOR%%.0.0_up1.2.1
|
||||
#!BuildTag: %%IMG_PREFIX%%kubevirt-dashboard-extension-chart:%%CHART_MAJOR%%.0.0_up1.2.1-%RELEASE%
|
||||
annotations:
|
||||
catalog.cattle.io/certified: rancher
|
||||
catalog.cattle.io/display-name: KubeVirt
|
||||
@ -10,11 +10,11 @@ annotations:
|
||||
catalog.cattle.io/rancher-version: '>= 2.10.0-0'
|
||||
catalog.cattle.io/scope: management
|
||||
catalog.cattle.io/ui-component: plugins
|
||||
catalog.cattle.io/ui-extensions-version: '>= 3.0.0'
|
||||
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||
apiVersion: v2
|
||||
appVersion: 1.2.0
|
||||
appVersion: 1.2.1
|
||||
description: 'SUSE Edge: KubeVirt extension for Rancher Dashboard'
|
||||
icon: https://raw.githubusercontent.com/cncf/artwork/master/projects/kubevirt/icon/color/kubevirt-icon-color.svg
|
||||
name: kubevirt-dashboard-extension
|
||||
type: application
|
||||
version: 1.2.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up1.2.1"
|
||||
|
@ -11,5 +11,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -8,7 +8,7 @@ spec:
|
||||
plugin:
|
||||
name: {{ include "extension-server.fullname" . }}
|
||||
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||
endpoint: https://raw.githubusercontent.com/suse-edge/dashboard-extensions/gh-pages/extensions/kubevirt-dashboard-extension/1.2.0
|
||||
endpoint: https://raw.githubusercontent.com/suse-edge/dashboard-extensions/gh-pages/extensions/kubevirt-dashboard-extension/1.2.1
|
||||
noCache: {{ .Values.plugin.noCache }}
|
||||
noAuth: {{ .Values.plugin.noAuth }}
|
||||
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
@ -8,5 +8,5 @@ plugin:
|
||||
metadata:
|
||||
catalog.cattle.io/display-name: KubeVirt
|
||||
catalog.cattle.io/rancher-version: ">= 2.10.0-0"
|
||||
catalog.cattle.io/ui-extensions-version: ">= 3.0.0"
|
||||
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||
catalog.cattle.io/kube-version: ">= v1.26.0-0"
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%metal3-chart:302.0.0_up0.9.0
|
||||
#!BuildTag: %%IMG_PREFIX%%metal3-chart:302.0.0_up0.9.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%metal3-chart:%%CHART_MAJOR%%.0.0_up0.9.0
|
||||
#!BuildTag: %%IMG_PREFIX%%metal3-chart:%%CHART_MAJOR%%.0.0_up0.9.0-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: 0.9.0
|
||||
dependencies:
|
||||
@ -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: 302.0.0+up0.9.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.9.0"
|
||||
|
@ -11,5 +11,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%metallb-chart:0.14.9
|
||||
#!BuildTag: %%IMG_PREFIX%%metallb-chart:0.14.9-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%metallb-chart:%%CHART_MAJOR%%.0.0_up0.14.9
|
||||
#!BuildTag: %%IMG_PREFIX%%metallb-chart:%%CHART_MAJOR%%.0.0_up0.14.9-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: v0.14.3
|
||||
dependencies:
|
||||
@ -20,4 +20,4 @@ name: metallb
|
||||
sources:
|
||||
- https://github.com/metallb/metallb
|
||||
type: application
|
||||
version: 0.14.9
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.14.9"
|
||||
|
@ -11,5 +11,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -1,10 +1,10 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-airgap-resources-chart:302.0.0_up0.13.0
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-airgap-resources-chart:302.0.0_up0.13.0
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-airgap-resources-chart:%%CHART_MAJOR%%.0.0_up0.14.1
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-airgap-resources-chart:%%CHART_MAJOR%%.0.0_up0.14.1
|
||||
apiVersion: v2
|
||||
appVersion: 0.13.0
|
||||
appVersion: 0.14.1
|
||||
description: Rancher Turtles utility chart for airgap scenarios
|
||||
home: https://github.com/rancher/turtles/
|
||||
icon: https://raw.githubusercontent.com/rancher/turtles/main/logos/capi.svg
|
||||
name: rancher-turtles-airgap-resources
|
||||
type: application
|
||||
version: 302.0.0+up0.13.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.14.1"
|
||||
|
@ -4,5 +4,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
File diff suppressed because one or more lines are too long
@ -35,7 +35,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: ipam-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -208,7 +207,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: ipam-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -369,7 +367,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: ipam-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -536,7 +533,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -699,6 +695,91 @@ data:
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: capm3-system/capm3-serving-cert
|
||||
controller-gen.kubebuilder.io/version: v0.13.0
|
||||
labels:
|
||||
cluster.x-k8s.io/provider: infrastructure-metal3
|
||||
cluster.x-k8s.io/v1beta1: v1beta1
|
||||
name: metal3clustertemplates.infrastructure.cluster.x-k8s.io
|
||||
spec:
|
||||
group: infrastructure.cluster.x-k8s.io
|
||||
names:
|
||||
categories:
|
||||
- cluster-api
|
||||
kind: Metal3ClusterTemplate
|
||||
listKind: Metal3ClusterTemplateList
|
||||
plural: metal3clustertemplates
|
||||
shortNames:
|
||||
- m3ct
|
||||
singular: metal3clustertemplate
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1beta1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: Metal3ClusterTemplate is the Schema for the metal3clustertemplates
|
||||
API.
|
||||
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: Metal3ClusterTemplateSpec defines the desired state of Metal3ClusterTemplate.
|
||||
properties:
|
||||
template:
|
||||
description: Metal3ClusterTemplateResource describes the data for
|
||||
creating a Metal3Cluster from a template.
|
||||
properties:
|
||||
spec:
|
||||
description: Metal3ClusterSpec defines the desired state of Metal3Cluster.
|
||||
properties:
|
||||
controlPlaneEndpoint:
|
||||
description: ControlPlaneEndpoint represents the endpoint
|
||||
used to communicate with the control plane.
|
||||
properties:
|
||||
host:
|
||||
description: Host is the hostname on which the API server
|
||||
is serving.
|
||||
type: string
|
||||
port:
|
||||
description: Port is the port on which the API server
|
||||
is serving.
|
||||
type: integer
|
||||
required:
|
||||
- host
|
||||
- port
|
||||
type: object
|
||||
noCloudProvider:
|
||||
description: Determines if the cluster is not to be deployed
|
||||
with an external cloud provider. If set to true, CAPM3 will
|
||||
use node labels to set providerID on the kubernetes nodes.
|
||||
If set to false, providerID is set on nodes by other entities
|
||||
and CAPM3 uses the value of the providerID on the m3m resource.
|
||||
type: boolean
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
type: object
|
||||
required:
|
||||
- template
|
||||
type: object
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: capm3-system/capm3-serving-cert
|
||||
@ -712,7 +793,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -868,7 +948,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -1064,7 +1143,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -2078,7 +2156,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -2150,6 +2227,17 @@ data:
|
||||
- metadata
|
||||
- disabled
|
||||
type: string
|
||||
customDeploy:
|
||||
description: A custom deploy procedure.
|
||||
properties:
|
||||
method:
|
||||
description: Custom deploy method name. This name is specific
|
||||
to the deploy ramdisk used. If you don't have a custom deploy
|
||||
ramdisk, you shouldn't use CustomDeploy.
|
||||
type: string
|
||||
required:
|
||||
- method
|
||||
type: object
|
||||
dataTemplate:
|
||||
description: MetadataTemplate is a reference to a Metal3DataTemplate
|
||||
object containing a template of metadata to be rendered. Metadata
|
||||
@ -2302,8 +2390,6 @@ data:
|
||||
type: string
|
||||
type: object
|
||||
x-kubernetes-map-type: atomic
|
||||
required:
|
||||
- image
|
||||
type: object
|
||||
status:
|
||||
description: Metal3MachineStatus defines the observed state of Metal3Machine.
|
||||
@ -2521,7 +2607,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -2591,6 +2676,17 @@ data:
|
||||
- metadata
|
||||
- disabled
|
||||
type: string
|
||||
customDeploy:
|
||||
description: A custom deploy procedure.
|
||||
properties:
|
||||
method:
|
||||
description: Custom deploy method name. This name is specific
|
||||
to the deploy ramdisk used. If you don't have a custom
|
||||
deploy ramdisk, you shouldn't use CustomDeploy.
|
||||
type: string
|
||||
required:
|
||||
- method
|
||||
type: object
|
||||
dataTemplate:
|
||||
description: MetadataTemplate is a reference to a Metal3DataTemplate
|
||||
object containing a template of metadata to be rendered.
|
||||
@ -2745,8 +2841,6 @@ data:
|
||||
type: string
|
||||
type: object
|
||||
x-kubernetes-map-type: atomic
|
||||
required:
|
||||
- image
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
@ -2774,7 +2868,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -2889,7 +2982,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
@ -3173,6 +3265,12 @@ data:
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods
|
||||
verbs:
|
||||
- list
|
||||
- apiGroups:
|
||||
- infrastructure.cluster.x-k8s.io
|
||||
resources:
|
||||
@ -3391,6 +3489,13 @@ data:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- storage.k8s.io
|
||||
resources:
|
||||
- volumeattachments
|
||||
verbs:
|
||||
- list
|
||||
- watch
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
@ -3634,7 +3739,7 @@ data:
|
||||
containers:
|
||||
- args:
|
||||
- --webhook-port=9443
|
||||
- --enableBMHNameBasedPreallocation=${enableBMHNameBasedPreallocation:=false}
|
||||
- --enableBMHNameBasedPreallocation=${ENABLE_BMH_NAME_BASED_PREALLOCATION:=false}
|
||||
- --diagnostics-address=${CAPM3_DIAGNOSTICS_ADDRESS:=:8443}
|
||||
- --insecure-diagnostics=${CAPM3_INSECURE_DIAGNOSTICS:=false}
|
||||
command:
|
||||
@ -3647,7 +3752,7 @@ data:
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: capm3-capm3fasttrack-configmap
|
||||
image: quay.io/metal3-io/cluster-api-provider-metal3:v1.7.2
|
||||
image: registry.rancher.com/rancher/cluster-api-provider-metal3:v1.8.2
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
@ -3676,6 +3781,7 @@ data:
|
||||
privileged: false
|
||||
runAsGroup: 65532
|
||||
runAsUser: 65532
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
volumeMounts:
|
||||
- mountPath: /tmp/k8s-webhook-server/serving-certs
|
||||
name: cert
|
||||
@ -3731,7 +3837,7 @@ data:
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
image: quay.io/metal3-io/ip-address-manager:v1.7.2
|
||||
image: quay.io/metal3-io/ip-address-manager:v1.8.1
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
@ -3760,6 +3866,7 @@ data:
|
||||
privileged: false
|
||||
runAsGroup: 65532
|
||||
runAsUser: 65532
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
volumeMounts:
|
||||
- mountPath: /tmp/k8s-webhook-server/serving-certs
|
||||
name: cert
|
||||
@ -3864,6 +3971,28 @@ data:
|
||||
resources:
|
||||
- metal3clusters
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
- v1beta1
|
||||
clientConfig:
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
path: /mutate-infrastructure-cluster-x-k8s-io-v1beta1-metal3clustertemplate
|
||||
failurePolicy: Fail
|
||||
matchPolicy: Equivalent
|
||||
name: default.metal3clustertemplate.infrastructure.cluster.x-k8s.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- infrastructure.cluster.x-k8s.io
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- metal3clustertemplates
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
- v1beta1
|
||||
@ -4126,6 +4255,28 @@ data:
|
||||
resources:
|
||||
- metal3clusters
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
- v1beta1
|
||||
clientConfig:
|
||||
service:
|
||||
name: capm3-webhook-service
|
||||
namespace: capm3-system
|
||||
path: /validate-infrastructure-cluster-x-k8s-io-v1beta1-metal3clustertemplate
|
||||
failurePolicy: Fail
|
||||
matchPolicy: Equivalent
|
||||
name: validation.metal3clustertemplate.infrastructure.cluster.x-k8s.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- infrastructure.cluster.x-k8s.io
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- metal3clustertemplates
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
- v1beta1
|
||||
@ -4360,6 +4511,9 @@ data:
|
||||
apiVersion: clusterctl.cluster.x-k8s.io/v1alpha3
|
||||
kind: Metadata
|
||||
releaseSeries:
|
||||
- major: 1
|
||||
minor: 8
|
||||
contract: v1beta1
|
||||
- major: 1
|
||||
minor: 7
|
||||
contract: v1beta1
|
||||
@ -4384,7 +4538,7 @@ data:
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: v1.7.2
|
||||
name: v1.8.2
|
||||
namespace: capm3-system
|
||||
labels:
|
||||
provider-components: metal3
|
||||
|
@ -32,7 +32,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: rke2-bootstrap-webhook-service
|
||||
namespace: rke2-bootstrap-system
|
||||
@ -1237,7 +1236,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: rke2-bootstrap-webhook-service
|
||||
namespace: rke2-bootstrap-system
|
||||
@ -2545,7 +2543,7 @@ data:
|
||||
- --insecure-diagnostics=${CAPRKE2_INSECURE_DIAGNOSTICS:=false}
|
||||
command:
|
||||
- /manager
|
||||
image: ghcr.io/rancher/cluster-api-provider-rke2-bootstrap:v0.8.0
|
||||
image: ghcr.io/rancher/cluster-api-provider-rke2-bootstrap:v0.9.0
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
@ -2574,6 +2572,7 @@ data:
|
||||
privileged: false
|
||||
runAsGroup: 65532
|
||||
runAsUser: 65532
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
volumeMounts:
|
||||
- mountPath: /tmp/k8s-webhook-server/serving-certs
|
||||
name: cert
|
||||
@ -2755,10 +2754,13 @@ data:
|
||||
- major: 0
|
||||
minor: 8
|
||||
contract: v1beta1
|
||||
- major: 0
|
||||
minor: 9
|
||||
contract: v1beta1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: v0.8.0
|
||||
name: v0.9.0
|
||||
namespace: rke2-bootstrap-system
|
||||
labels:
|
||||
provider-components: rke2-bootstrap
|
||||
|
@ -32,7 +32,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: rke2-control-plane-webhook-service
|
||||
namespace: rke2-control-plane-system
|
||||
@ -2620,7 +2619,6 @@ data:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: rke2-control-plane-webhook-service
|
||||
namespace: rke2-control-plane-system
|
||||
@ -4295,7 +4293,7 @@ data:
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.uid
|
||||
image: ghcr.io/rancher/cluster-api-provider-rke2-controlplane:v0.8.0
|
||||
image: ghcr.io/rancher/cluster-api-provider-rke2-controlplane:v0.9.0
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
@ -4331,6 +4329,7 @@ data:
|
||||
privileged: false
|
||||
runAsGroup: 65532
|
||||
runAsUser: 65532
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
volumeMounts:
|
||||
- mountPath: /tmp/k8s-webhook-server/serving-certs
|
||||
name: cert
|
||||
@ -4512,10 +4511,13 @@ data:
|
||||
- major: 0
|
||||
minor: 8
|
||||
contract: v1beta1
|
||||
- major: 0
|
||||
minor: 9
|
||||
contract: v1beta1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: v0.8.0
|
||||
name: v0.9.0
|
||||
namespace: rke2-control-plane-system
|
||||
labels:
|
||||
provider-components: rke2-control-plane
|
||||
|
@ -3,4 +3,4 @@ dependencies:
|
||||
repository: https://kubernetes-sigs.github.io/cluster-api-operator
|
||||
version: 0.14.0
|
||||
digest: sha256:9e9e851dbab3212c279efec06bcf0da147228ea1590470f3a8cbbb5806a250d4
|
||||
generated: "2024-10-28T11:44:34.392387979Z"
|
||||
generated: "2024-12-03T09:34:12.871417074Z"
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-chart:302.0.0_up0.13.0
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-chart:302.0.0_up0.13.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-chart:%%CHART_MAJOR%%.0.0_up0.14.1
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-chart:%%CHART_MAJOR%%.0.0_up0.14.1-%RELEASE%
|
||||
annotations:
|
||||
catalog.cattle.io/certified: rancher
|
||||
catalog.cattle.io/display-name: Rancher Turtles - the Cluster API Extension
|
||||
@ -7,12 +7,12 @@ annotations:
|
||||
catalog.cattle.io/namespace: rancher-turtles-system
|
||||
catalog.cattle.io/os: linux
|
||||
catalog.cattle.io/permits-os: linux
|
||||
catalog.cattle.io/rancher-version: '>= 2.9.0-1'
|
||||
catalog.cattle.io/rancher-version: '>= 2.10.0-1'
|
||||
catalog.cattle.io/release-name: rancher-turtles
|
||||
catalog.cattle.io/scope: management
|
||||
catalog.cattle.io/type: cluster-tool
|
||||
apiVersion: v2
|
||||
appVersion: 0.13.0
|
||||
appVersion: 0.14.1
|
||||
dependencies:
|
||||
- condition: cluster-api-operator.enabled
|
||||
name: cluster-api-operator
|
||||
@ -29,4 +29,4 @@ keywords:
|
||||
- provisioning
|
||||
name: rancher-turtles
|
||||
type: application
|
||||
version: 302.0.0+up0.13.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.14.1"
|
||||
|
@ -11,5 +11,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -2,17 +2,6 @@
|
||||
{{- $namespace := index .Values "cluster-api-operator" "cluster-api" "metal3" "infrastructure" "namespace" }}
|
||||
{{- if not (lookup "v1" "Namespace" "" $namespace) }}
|
||||
---
|
||||
apiVersion: turtles-capi.cattle.io/v1alpha1
|
||||
kind: ClusterctlConfig
|
||||
metadata:
|
||||
name: clusterctl-config
|
||||
namespace: rancher-turtles-system
|
||||
spec:
|
||||
providers:
|
||||
- name: metal3
|
||||
url: "https://github.com/metal3-io/cluster-api-provider-metal3/releases/v1.7.2/infrastructure-components.yaml"
|
||||
type: InfrastructureProvider
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
@ -23,6 +12,20 @@ metadata:
|
||||
{{- end }}
|
||||
---
|
||||
apiVersion: turtles-capi.cattle.io/v1alpha1
|
||||
kind: ClusterctlConfig
|
||||
metadata:
|
||||
name: clusterctl-config
|
||||
namespace: rancher-turtles-system
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install, post-upgrade"
|
||||
"helm.sh/hook-weight": "1"
|
||||
spec:
|
||||
providers:
|
||||
- name: metal3
|
||||
url: "https://github.com/metal3-io/cluster-api-provider-metal3/releases/v1.7.2/infrastructure-components.yaml"
|
||||
type: InfrastructureProvider
|
||||
---
|
||||
apiVersion: turtles-capi.cattle.io/v1alpha1
|
||||
kind: CAPIProvider
|
||||
metadata:
|
||||
name: metal3
|
||||
@ -33,8 +36,8 @@ metadata:
|
||||
spec:
|
||||
name: metal3
|
||||
type: infrastructure
|
||||
{{- if index .Values "cluster-api-operator" "cluster-api" "rke2" "version" }}
|
||||
version: {{ index .Values "cluster-api-operator" "cluster-api" "rke2" "version" }}
|
||||
{{- if index .Values "cluster-api-operator" "cluster-api" "metal3" "version" }}
|
||||
version: {{ index .Values "cluster-api-operator" "cluster-api" "metal3" "version" }}
|
||||
{{- end }}
|
||||
configSecret:
|
||||
{{- if index .Values "cluster-api-operator" "cluster-api" "configSecret" "name" }}
|
||||
|
@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
cert-manager.io/inject-ca-from: {{ index .Values "rancherTurtles" "namespace" }}/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
controller-gen.kubebuilder.io/version: v0.14.0
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
@ -45,77 +45,65 @@ spec:
|
||||
properties:
|
||||
clusterName:
|
||||
type: string
|
||||
configRef:
|
||||
type: string
|
||||
location:
|
||||
type: string
|
||||
machineName:
|
||||
type: string
|
||||
required:
|
||||
- clusterName
|
||||
- configRef
|
||||
- location
|
||||
- machineName
|
||||
type: object
|
||||
x-kubernetes-validations:
|
||||
- message: ETCD snapshot location can't be empty.
|
||||
rule: size(self.location)>0
|
||||
rule: size(self.clusterName)>0
|
||||
status:
|
||||
default: {}
|
||||
description: EtcdSnapshotRestoreStatus defines observed state of EtcdSnapshotRestore
|
||||
properties:
|
||||
conditions:
|
||||
description: Conditions provide observations of the operational state
|
||||
of a Cluster API resource.
|
||||
items:
|
||||
description: Condition defines an observation of a Cluster API resource
|
||||
operational state.
|
||||
properties:
|
||||
lastTransitionTime:
|
||||
description: |-
|
||||
Last time the condition transitioned from one status to another.
|
||||
This should be when the underlying condition changed. If that is not known, then using the time when
|
||||
the API field changed is acceptable.
|
||||
format: date-time
|
||||
type: string
|
||||
message:
|
||||
description: |-
|
||||
A human readable message indicating details about the transition.
|
||||
This field may be empty.
|
||||
type: string
|
||||
reason:
|
||||
description: |-
|
||||
The reason for the condition's last transition in CamelCase.
|
||||
The specific API may choose whether or not this field is considered a guaranteed API.
|
||||
This field may not be empty.
|
||||
type: string
|
||||
severity:
|
||||
description: |-
|
||||
Severity provides an explicit classification of Reason code, so the users or machines can immediately
|
||||
understand the current situation and act accordingly.
|
||||
The Severity field MUST be set only when Status=False.
|
||||
type: string
|
||||
status:
|
||||
description: Status of the condition, one of True, False, Unknown.
|
||||
type: string
|
||||
type:
|
||||
description: |-
|
||||
Type of condition in CamelCase or in foo.example.com/CamelCase.
|
||||
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
|
||||
can be useful (see .node.status.conditions), the ability to deconflict is important.
|
||||
type: string
|
||||
required:
|
||||
- lastTransitionTime
|
||||
- status
|
||||
- type
|
||||
type: object
|
||||
type: array
|
||||
manual:
|
||||
type: boolean
|
||||
error:
|
||||
type: string
|
||||
phase:
|
||||
description: ETCDSnapshotPhase is a string representation of the phase
|
||||
of the etcd snapshot
|
||||
type: string
|
||||
s3Snapshots:
|
||||
items:
|
||||
properties:
|
||||
creationTime:
|
||||
description: CreationTime is the timestamp when the snapshot
|
||||
was taken by etcd.
|
||||
format: date-time
|
||||
type: string
|
||||
location:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
required:
|
||||
- location
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
snapshotFileName:
|
||||
type: string
|
||||
snapshots:
|
||||
items:
|
||||
properties:
|
||||
creationTime:
|
||||
description: CreationTime is the timestamp when the snapshot
|
||||
was taken by etcd.
|
||||
format: date-time
|
||||
type: string
|
||||
location:
|
||||
type: string
|
||||
machineName:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
required:
|
||||
- location
|
||||
- machineName
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
type: object
|
||||
type: object
|
||||
served: true
|
||||
@ -127,7 +115,7 @@ apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
cert-manager.io/inject-ca-from: {{ index .Values "rancherTurtles" "namespace" }}/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
controller-gen.kubebuilder.io/version: v0.14.0
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
@ -246,7 +234,7 @@ apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
cert-manager.io/inject-ca-from: {{ index .Values "rancherTurtles" "namespace" }}/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
controller-gen.kubebuilder.io/version: v0.14.0
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
@ -306,8 +294,6 @@ spec:
|
||||
type: string
|
||||
insecure:
|
||||
type: boolean
|
||||
location:
|
||||
type: string
|
||||
region:
|
||||
type: string
|
||||
s3CredentialSecret:
|
||||
@ -337,7 +323,7 @@ metadata:
|
||||
app.kubernetes.io/part-of: rancher-turtles
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-manager
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
@ -351,7 +337,7 @@ metadata:
|
||||
app.kubernetes.io/part-of: rancher-turtles
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-leader-election-role
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
@ -600,7 +586,7 @@ metadata:
|
||||
app.kubernetes.io/part-of: rancher-turtles
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-leader-election-rolebinding
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
@ -608,7 +594,7 @@ roleRef:
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: rancher-turtles-etcdsnapshotrestore-manager
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
@ -629,7 +615,7 @@ roleRef:
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: rancher-turtles-etcdsnapshotrestore-manager
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
@ -637,7 +623,7 @@ metadata:
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-webhook-service
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
spec:
|
||||
ports:
|
||||
- port: 443
|
||||
@ -652,7 +638,7 @@ metadata:
|
||||
control-plane: controller-manager
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-controller-manager
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@ -671,7 +657,7 @@ spec:
|
||||
- args:
|
||||
- --leader-elect
|
||||
command:
|
||||
- /manager
|
||||
- ./etcd-snapshot-restore
|
||||
env:
|
||||
- name: POD_NAMESPACE
|
||||
valueFrom:
|
||||
@ -685,8 +671,13 @@ spec:
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.uid
|
||||
image: ghcr.io/rancher/turtles-etcd-snapshot-restore:dev
|
||||
imagePullPolicy: IfNotPresent
|
||||
{{- $imageVersion := index .Values "rancherTurtles" "features" "etcd-snapshot-restore" "imageVersion" -}}
|
||||
{{- if contains "sha256:" $imageVersion }}
|
||||
image: {{ index .Values "rancherTurtles" "features" "etcd-snapshot-restore" "image" }}@{{ index .Values "rancherTurtles" "features" "etcd-snapshot-restore" "imageVersion" }}
|
||||
{{- else }}
|
||||
image: {{ index .Values "rancherTurtles" "features" "etcd-snapshot-restore" "image" }}:{{ index .Values "rancherTurtles" "features" "etcd-snapshot-restore" "imageVersion" }}
|
||||
{{- end }}
|
||||
imagePullPolicy: '{{ index .Values "rancherTurtles" "features" "etcd-snapshot-restore" "imagePullPolicy" }}'
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /healthz
|
||||
@ -733,11 +724,11 @@ metadata:
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
spec:
|
||||
dnsNames:
|
||||
- rancher-turtles-etcdsnapshotrestore-webhook-service.rancher-turtles-system.svc
|
||||
- rancher-turtles-etcdsnapshotrestore-webhook-service.rancher-turtles-system.svc.cluster.local
|
||||
- rancher-turtles-etcdsnapshotrestore-webhook-service.{{ index .Values "rancherTurtles" "namespace" }}.svc
|
||||
- rancher-turtles-etcdsnapshotrestore-webhook-service.{{ index .Values "rancherTurtles" "namespace" }}.svc.cluster.local
|
||||
issuerRef:
|
||||
kind: Issuer
|
||||
name: rancher-turtles-etcdsnapshotrestore-selfsigned-issuer
|
||||
@ -749,7 +740,7 @@ metadata:
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-selfsigned-issuer
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
spec:
|
||||
selfSigned: {}
|
||||
---
|
||||
@ -757,7 +748,7 @@ apiVersion: admissionregistration.k8s.io/v1
|
||||
kind: MutatingWebhookConfiguration
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
cert-manager.io/inject-ca-from: {{ index .Values "rancherTurtles" "namespace" }}/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-mutating-webhook-configuration
|
||||
@ -767,7 +758,7 @@ webhooks:
|
||||
clientConfig:
|
||||
service:
|
||||
name: rancher-turtles-etcdsnapshotrestore-webhook-service
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
path: /mutate-bootstrap-cluster-x-k8s-io-v1beta1-rke2config
|
||||
failurePolicy: Fail
|
||||
name: systemagentrke2config.kb.io
|
||||
@ -787,7 +778,7 @@ apiVersion: admissionregistration.k8s.io/v1
|
||||
kind: ValidatingWebhookConfiguration
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
cert-manager.io/inject-ca-from: {{ index .Values "rancherTurtles" "namespace" }}/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-validating-webhook-configuration
|
||||
@ -797,7 +788,7 @@ webhooks:
|
||||
clientConfig:
|
||||
service:
|
||||
name: rancher-turtles-etcdsnapshotrestore-webhook-service
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
path: /validate-turtles-capi-cattle-io-v1alpha1-etcdmachinesnapshot
|
||||
failurePolicy: Fail
|
||||
matchPolicy: Equivalent
|
||||
@ -818,7 +809,7 @@ webhooks:
|
||||
clientConfig:
|
||||
service:
|
||||
name: rancher-turtles-etcdsnapshotrestore-webhook-service
|
||||
namespace: rancher-turtles-system
|
||||
namespace: {{ index .Values "rancherTurtles" "namespace" }}
|
||||
path: /validate-turtles-capi-cattle-io-v1alpha1-etcdsnapshotrestore
|
||||
failurePolicy: Fail
|
||||
matchPolicy: Equivalent
|
||||
|
@ -1,6 +1,6 @@
|
||||
rancherTurtles:
|
||||
image: registry.rancher.com/rancher/rancher/turtles
|
||||
imageVersion: v0.13.0
|
||||
imageVersion: v0.14.1
|
||||
imagePullPolicy: IfNotPresent
|
||||
namespace: rancher-turtles-system
|
||||
managerArguments: []
|
||||
@ -25,6 +25,9 @@ rancherTurtles:
|
||||
enabled: false
|
||||
etcd-snapshot-restore:
|
||||
enabled: false
|
||||
image: registry.rancher.com/rancher/rancher/turtles
|
||||
imageVersion: v0.14.1
|
||||
imagePullPolicy: IfNotPresent
|
||||
addon-provider-fleet:
|
||||
enabled: false
|
||||
cluster-api-operator:
|
||||
@ -57,34 +60,30 @@ cluster-api-operator:
|
||||
defaultName: capi-env-variables
|
||||
core:
|
||||
namespace: capi-system
|
||||
imageUrl: ""
|
||||
fetchConfig:
|
||||
url: ""
|
||||
selector: ""
|
||||
rke2:
|
||||
enabled: true
|
||||
version: ""
|
||||
bootstrap:
|
||||
namespace: rke2-bootstrap-system
|
||||
imageUrl: "registry.rancher.com/rancher/cluster-api-provider-rke2-bootstrap:v0.8.0"
|
||||
fetchConfig:
|
||||
url: ""
|
||||
selector: ""
|
||||
controlPlane:
|
||||
namespace: rke2-control-plane-system
|
||||
imageUrl: "registry.rancher.com/rancher/cluster-api-provider-rke2-controlplane:v0.8.0"
|
||||
fetchConfig:
|
||||
url: ""
|
||||
selector: ""
|
||||
metal3:
|
||||
enabled: true
|
||||
version: ""
|
||||
version: "v1.8.2"
|
||||
infrastructure:
|
||||
namespace: capm3-system
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%cluster-api-provider-metal3:1.7.2"
|
||||
imageUrl: "registry.rancher.com/rancher/cluster-api-metal3-controller:v1.8.2"
|
||||
fetchConfig:
|
||||
url: ""
|
||||
selector: ""
|
||||
ipam:
|
||||
namespace: capm3-system
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%images/ip-address-manager:1.7.2"
|
||||
imageUrl: "registry.rancher.com/rancher/cluster-api-metal3-ipam-controller:v1.8.1"
|
||||
|
23
release-manifest-image/Dockerfile
Normal file
23
release-manifest-image/Dockerfile
Normal file
@ -0,0 +1,23 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%release-manifest:3.2.0
|
||||
ARG SLE_VERSION
|
||||
FROM registry.suse.com/bci/bci-micro:$SLE_VERSION
|
||||
|
||||
# Define labels according to https://en.opensuse.org/Building_derived_containers
|
||||
# labelprefix=com.suse.edge.manifest
|
||||
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
|
||||
LABEL org.opencontainers.image.title="SUSE Edge Release Manifest"
|
||||
LABEL org.opencontainers.image.description="Release Manifest containing information about a specific SUSE Edge release"
|
||||
LABEL org.opencontainers.image.version="3.2.0"
|
||||
LABEL org.opencontainers.image.url="https://www.suse.com/solutions/edge-computing/"
|
||||
LABEL org.opencontainers.image.created="%BUILDTIME%"
|
||||
LABEL org.opencontainers.image.vendor="SUSE LLC"
|
||||
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%release-manifest:3.2.0"
|
||||
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="release-manifest"
|
||||
LABEL com.suse.release-stage="released"
|
||||
# endlabelprefix
|
||||
|
||||
COPY release_manifest.yaml release_manifest.yaml
|
@ -1,12 +1,5 @@
|
||||
<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">%%cluster-api-provider-rke2_version%%</param>
|
||||
<param name="package">cluster-api-provider-rke2-bootstrap</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>
|
||||
@ -16,4 +9,13 @@
|
||||
<param name="eval">SUPPORT_LEVEL=$(rpm --macros=/root/.rpmmacros -E %support_level)</param>
|
||||
<param name="var">SUPPORT_LEVEL</param>
|
||||
</service>
|
||||
<service name="replace_using_env" mode="buildtime">
|
||||
<param name="file">release_manifest.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_REPO=$(rpm --macros=/root/.rpmmacros -E %chart_repo)</param>
|
||||
<param name="var">CHART_REPO</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
104
release-manifest-image/release_manifest.yaml
Normal file
104
release-manifest-image/release_manifest.yaml
Normal file
@ -0,0 +1,104 @@
|
||||
apiVersion: lifecycle.suse.com/v1alpha1
|
||||
kind: ReleaseManifest
|
||||
metadata:
|
||||
name: release-manifest-3-2-0
|
||||
spec:
|
||||
releaseVersion: 3.2.0
|
||||
components:
|
||||
kubernetes:
|
||||
k3s:
|
||||
version: v1.31.2+k3s1
|
||||
rke2:
|
||||
version: v1.31.2+rke2r1
|
||||
operatingSystem:
|
||||
version: "6.0"
|
||||
zypperID: "SL-Micro"
|
||||
cpeScheme: "cpe:/o:suse:sl-micro:6.0"
|
||||
prettyName: "SUSE Linux Micro 6.0"
|
||||
supportedArchs:
|
||||
- "x86_64"
|
||||
- "aarch64"
|
||||
workloads:
|
||||
helm:
|
||||
- prettyName: Rancher
|
||||
releaseName: rancher
|
||||
chart: rancher
|
||||
version: v2.10.0
|
||||
repository: https://releases.rancher.com/server-charts/stable
|
||||
- prettyName: Longhorn
|
||||
releaseName: longhorn
|
||||
chart: longhorn
|
||||
version: 105.1.0+up1.7.2
|
||||
repository: https://charts.rancher.io
|
||||
dependencyCharts:
|
||||
- releaseName: longhorn-crd
|
||||
chart: longhorn-crd
|
||||
version: 105.1.0+up1.7.2
|
||||
repository: https://charts.rancher.io
|
||||
- prettyName: MetalLB
|
||||
releaseName: metallb
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%metallb-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up0.14.9
|
||||
- prettyName: CDI
|
||||
releaseName: cdi
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%cdi-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up0.4.0
|
||||
- prettyName: KubeVirt
|
||||
releaseName: kubevirt
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%kubevirt-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up0.4.0
|
||||
addonCharts:
|
||||
- releaseName: kubevirt-dashboard-extension
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%kubevirt-dashboard-extension-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up1.2.1
|
||||
- prettyName: NeuVector
|
||||
releaseName: neuvector
|
||||
chart: neuvector
|
||||
version: 105.0.0+up2.8.3
|
||||
repository: https://charts.rancher.io
|
||||
dependencyCharts:
|
||||
- releaseName: neuvector-crd
|
||||
chart: neuvector-crd
|
||||
version: 105.0.0+up2.8.3
|
||||
repository: https://charts.rancher.io
|
||||
addonCharts:
|
||||
- releaseName: neuvector-ui-ext
|
||||
chart: neuvector-ui-ext
|
||||
repository: https://github.com/rancher/ui-plugin-charts/raw/main
|
||||
version: 2.0.1
|
||||
- prettyName: EndpointCopierOperator
|
||||
releaseName: endpoint-copier-operator
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%endpoint-copier-operator-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up0.2.1
|
||||
- prettyName: Elemental
|
||||
releaseName: elemental-operator
|
||||
chart: oci://registry.suse.com/rancher/elemental-operator-chart
|
||||
version: 1.6.5
|
||||
dependencyCharts:
|
||||
- releaseName: elemental-operator-crds
|
||||
chart: oci://registry.suse.com/rancher/elemental-operator-crds-chart
|
||||
version: 1.6.5
|
||||
- prettyName: SRIOV
|
||||
releaseName: sriov-network-operator
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%sriov-network-operator-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up1.4.0
|
||||
dependencyCharts:
|
||||
- releaseName: sriov-crd
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%sriov-crd-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up1.4.0
|
||||
- prettyName: Akri
|
||||
releaseName: akri
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%akri-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up0.12.20
|
||||
addonCharts:
|
||||
- releaseName: akri-dashboard-extension
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%akri-dashboard-extension-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up1.2.1
|
||||
- prettyName: Metal3
|
||||
releaseName: metal3
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%metal3-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up0.9.0
|
||||
- prettyName: RancherTurtles
|
||||
releaseName: rancher-turtles
|
||||
chart: %%CHART_REPO%%/%%IMG_PREFIX%%rancher-turtles-chart
|
||||
version: %%CHART_MAJOR%%.0.0+up0.14.1
|
@ -1,5 +1,5 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%sriov-crd-chart:1.3.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%sriov-crd-chart:1.3.0
|
||||
#!BuildTag: %%IMG_PREFIX%%sriov-crd-chart:%%CHART_MAJOR%%.0.0_up1.4.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%sriov-crd-chart:%%CHART_MAJOR%%.0.0_up1.4.0
|
||||
annotations:
|
||||
catalog.cattle.io/experimental: "true"
|
||||
catalog.cattle.io/hidden: "true"
|
||||
@ -10,4 +10,4 @@ apiVersion: v2
|
||||
description: Installs the CRDs for the SR-IOV operator
|
||||
name: sriov-crd
|
||||
type: application
|
||||
version: 1.3.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up1.4.0"
|
||||
|
@ -4,5 +4,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -1,19 +1,19 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%sriov-network-operator-chart:1.3.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%sriov-network-operator-chart:1.3.0
|
||||
#!BuildTag: %%IMG_PREFIX%%sriov-network-operator-chart:%%CHART_MAJOR%%.0.0_up1.4.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%sriov-network-operator-chart:%%CHART_MAJOR%%.0.0_up1.4.0
|
||||
annotations:
|
||||
catalog.cattle.io/auto-install: sriov-crd=match
|
||||
catalog.cattle.io/experimental: "true"
|
||||
catalog.cattle.io/namespace: cattle-sriov-system
|
||||
catalog.cattle.io/os: linux
|
||||
catalog.cattle.io/permits-os: linux
|
||||
catalog.cattle.io/upstream-version: 1.3.0
|
||||
catalog.cattle.io/upstream-version: 1.4.0
|
||||
apiVersion: v2
|
||||
appVersion: v1.3.0
|
||||
appVersion: v1.4.0
|
||||
dependencies:
|
||||
- condition: sriov-nfd.enabled
|
||||
name: sriov-nfd
|
||||
repository: file://./charts/sriov-nfd
|
||||
version: 0.15.6
|
||||
version: 0.15.7
|
||||
description: SR-IOV network operator configures and manages SR-IOV networks in the
|
||||
kubernetes cluster
|
||||
home: https://github.com/k8snetworkplumbingwg/sriov-network-operator
|
||||
@ -25,4 +25,4 @@ name: sriov-network-operator
|
||||
sources:
|
||||
- https://github.com/k8snetworkplumbingwg/sriov-network-operator
|
||||
type: application
|
||||
version: 1.3.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up1.4.0"
|
||||
|
@ -38,9 +38,20 @@ For additional information and methods for installing Helm, refer to the officia
|
||||
|
||||
### Deploy SR-IOV Network Operator
|
||||
|
||||
#### Deploy from OCI repo
|
||||
|
||||
```
|
||||
$ helm install -n sriov-network-operator --create-namespace --version 1.3.0 --set sriovOperatorConfig.deploy=true sriov-network-operator oci://ghcr.io/k8snetworkplumbingwg/sriov-network-operator-chart
|
||||
```
|
||||
|
||||
#### Deploy from project sources
|
||||
|
||||
```
|
||||
# Clone project
|
||||
$ git clone https://github.com/k8snetworkplumbingwg/sriov-network-operator.git ; cd sriov-network-operator
|
||||
|
||||
# Install Operator
|
||||
$ helm install -n sriov-network-operator --create-namespace --wait sriov-network-operator ./
|
||||
$ helm install -n sriov-network-operator --create-namespace --wait --set sriovOperatorConfig.deploy=true sriov-network-operator ./deployment/sriov-network-operator-chart
|
||||
|
||||
# View deployed resources
|
||||
$ kubectl -n sriov-network-operator get pods
|
||||
@ -128,3 +139,13 @@ This section contains general parameters that apply to both the operator and dae
|
||||
| `images.sriovDevicePlugin` | SR-IOV device plugin image |
|
||||
| `images.resourcesInjector` | Resources Injector image |
|
||||
| `images.webhook` | Operator Webhook image |
|
||||
|
||||
### Extra objects parameters
|
||||
|
||||
**Disclaimer**:
|
||||
|
||||
Please note that any resources deployed using the `extraDeploy` in this Helm chart are the sole responsibility of the user. It is important to review and understand the implications of these deployed resources. The maintainers of this Helm chart take no responsibility for any issues or damages caused by the deployment or operation of these resources.
|
||||
|
||||
| Name | description |
|
||||
| ---- | ------------|
|
||||
|`extraDeploy`| Array of extra objects to deploy with the release |
|
||||
|
@ -4,5 +4,7 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
@ -1,5 +1,5 @@
|
||||
apiVersion: v2
|
||||
appVersion: v0.15.6
|
||||
appVersion: v0.15.7
|
||||
description: Detects hardware features available on each node in a Kubernetes cluster,
|
||||
and advertises those features using node labels
|
||||
home: https://github.com/kubernetes-sigs/node-feature-discovery
|
||||
@ -11,4 +11,4 @@ name: sriov-nfd
|
||||
sources:
|
||||
- https://github.com/kubernetes-sigs/node-feature-discovery
|
||||
type: application
|
||||
version: 0.15.6
|
||||
version: 0.15.7
|
||||
|
@ -3,7 +3,7 @@ image:
|
||||
# This should be set to 'IfNotPresent' for released version
|
||||
pullPolicy: IfNotPresent
|
||||
# tag, if defined will use the given image tag, else Chart.AppVersion will be used
|
||||
tag: v0.15.6-build20240822
|
||||
tag: v0.15.7-build20241113
|
||||
imagePullSecrets: []
|
||||
|
||||
nameOverride: ""
|
||||
|
8
sriov-network-operator-chart/templates/extra-list.yaml
Normal file
8
sriov-network-operator-chart/templates/extra-list.yaml
Normal file
@ -0,0 +1,8 @@
|
||||
{{- range .Values.extraDeploy }}
|
||||
---
|
||||
{{- if typeIs "string" . }}
|
||||
{{- tpl . $ }}
|
||||
{{- else }}
|
||||
{{- tpl (. | toYaml) $ }}
|
||||
{{- end }}
|
||||
{{- end }}
|
@ -20,6 +20,8 @@ spec:
|
||||
maxUnavailable: 33%
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
openshift.io/required-scc: restricted-v2
|
||||
labels:
|
||||
name: sriov-network-operator
|
||||
spec:
|
||||
|
@ -96,26 +96,27 @@ supportedExtraNICs: []
|
||||
images:
|
||||
operator:
|
||||
repository: rancher/hardened-sriov-network-operator
|
||||
tag: v1.3.0-build20240816
|
||||
tag: v1.4.0-build20241113
|
||||
sriovConfigDaemon:
|
||||
repository: rancher/hardened-sriov-network-config-daemon
|
||||
tag: v1.3.0-build20240816
|
||||
tag: v1.4.0-build20241113
|
||||
sriovCni:
|
||||
repository: rancher/hardened-sriov-cni
|
||||
tag: v2.8.1-build20240820
|
||||
tag: v2.8.1-build20241113
|
||||
ibSriovCni:
|
||||
repository: rancher/hardened-ib-sriov-cni
|
||||
tag: v1.1.1-build20240816
|
||||
tag: v1.1.1-build20241113
|
||||
sriovDevicePlugin:
|
||||
repository: rancher/hardened-sriov-network-device-plugin
|
||||
tag: v3.7.0-build20240816
|
||||
tag: v3.8.0-build20241114
|
||||
resourcesInjector:
|
||||
repository: rancher/hardened-sriov-network-resources-injector
|
||||
tag: v1.6.0-build20240816
|
||||
tag: v1.6.0-build20241113
|
||||
webhook:
|
||||
repository: rancher/hardened-sriov-network-webhook
|
||||
tag: v1.3.0-build20240816
|
||||
tag: v1.4.0-build20241113
|
||||
imagePullSecrets: []
|
||||
extraDeploy: []
|
||||
global:
|
||||
cattle:
|
||||
systemDefaultRegistry: ""
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%upgrade-controller-chart:0.1.0
|
||||
#!BuildTag: %%IMG_PREFIX%%upgrade-controller-chart:0.1.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%upgrade-controller-chart:%%CHART_MAJOR%%.0.0_up0.1.0
|
||||
#!BuildTag: %%IMG_PREFIX%%upgrade-controller-chart:%%CHART_MAJOR%%.0.0_up0.1.0-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: 0.1.0
|
||||
dependencies:
|
||||
@ -10,4 +10,4 @@ dependencies:
|
||||
description: A Helm chart for Upgrade Controller
|
||||
name: upgrade-controller
|
||||
type: application
|
||||
version: 0.1.0
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.1.0"
|
||||
|
@ -11,6 +11,8 @@
|
||||
<param name="file">Chart.yaml</param>
|
||||
<param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param>
|
||||
<param name="var">IMG_PREFIX</param>
|
||||
<param name="eval">CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major})</param>
|
||||
<param name="var">CHART_MAJOR</param>
|
||||
</service>
|
||||
</services>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user