diff --git a/Makefile b/Makefile
index f0842162..21e6d175 100644
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,11 @@ endif
# PROJECT_VERSION defines the project version.
# Update this value when you upgrade the version of your project.
-PROJECT_VERSION ?= v1.2.0
+PROJECT_VERSION ?= v0.0.1
+
+# AINIC_VERSIONS lists the supported AINIC firmware versions for this release (comma-separated).
+# Used by update-docs-version to populate the compatibility matrix in docs/index.md.
+AINIC_VERSIONS ?= 1.117.5-a-77,1.117.5-a-147
####################################
# Network Operator Image Build variables
@@ -48,7 +52,7 @@ KMM_OPERATOR_IMG_NAME ?= $(DOCKER_REGISTRY)/kernel-module-management-operator
# by default, helm charts version is same as project version
# unless in the hourly build where we may put hourly build tag in the helm charts version
HELM_CHARTS_VERSION ?= $(PROJECT_VERSION)
-YAML_FILES=config/samples/amd.com_networkconfigs.yaml config/manifests/bases/amd-network-operator.clusterserviceversion.yaml example/networkconfig.yaml config/default/kustomization.yaml
+YAML_FILES=bundle/manifests/amd-network-operator-node-metrics_rbac.authorization.k8s.io_v1_rolebinding.yaml bundle/manifests/amd-network-operator.clusterserviceversion.yaml bundle/manifests/amd-network-operator-node-labeller_rbac.authorization.k8s.io_v1_clusterrolebinding.yaml bundle/manifests/amd-network-operator-node-metrics_monitoring.coreos.com_v1_servicemonitor.yaml config/samples/amd.com_networkconfigs.yaml config/manifests/bases/amd-network-operator.clusterserviceversion.yaml example/networkconfig.yaml config/default/kustomization.yaml
CRD_YAML_FILES = networkconfig-crd.yaml
K8S_KMM_CRD_YAML_FILES=module-crd.yaml nodemodulesconfig-crd.yaml
OPENSHIFT_KMM_CRD_YAML_FILES=module-crd.yaml nodemodulesconfig-crd.yaml
@@ -128,7 +132,7 @@ SHELL = /usr/bin/env bash -o pipefail
DOCKER_GID := $(shell stat -c '%g' /var/run/docker.sock)
USER_UID := $(shell id -u)
USER_GID := $(shell id -g)
-DOCKER_BUILDER_TAG := v1.4
+DOCKER_BUILDER_TAG := v1.5
DOCKER_BUILDER_IMAGE := $(DOCKER_REGISTRY)/network-operator-build:$(DOCKER_BUILDER_TAG)
CONTAINER_WORKDIR := /network-operator
BUILD_BASE_IMG ?= ubuntu:22.04
@@ -160,6 +164,12 @@ all: vendor generate manager manifests helm-k8s docker-build
.PHONY: skip-vendor
skip-vendor: generate manager manifests helm-k8s docker-build
+.PHONY: release-prep
+release-prep: update-version-in-ci update-docs-version helm-k8s bundle-build catalog ## Prepare release: bump versions in code, CI, docs, helm charts, and OLM bundle/catalog
+ @printf -- "---\n# Required by Auto Cherry Picker automation\n# Defines the list of branches into which the changes would need cherry-picking\ncherry_pick_branches:\n - main\n" > branch_policy.yml
+ @echo ""
+ @echo "Release prep complete for ${PROJECT_VERSION}."
+
##@ General
# The help target prints out all targets with their descriptions organized
@@ -182,6 +192,7 @@ help: ## Display this help.
.PHONY: update-registry
update-registry: ## Update all image URLs based on the image variables
# updating registry information in yaml files
+ sed -i -e 's|image:.*$$|image: ${IMG}|' bundle/manifests/amd-network-operator.clusterserviceversion.yaml
sed -i -e 's|repository:.*$$|repository: ${IMAGE_TAG_BASE}|' \
hack/k8s-patch/metadata-patch/values.yaml \
hack/openshift-patch/metadata-patch/values.yaml
@@ -189,7 +200,7 @@ update-registry: ## Update all image URLs based on the image variables
-e 's|newName:.*$$|newName: ${IMAGE_TAG_BASE}|' \
config/manager-base/kustomization.yaml config/manager/kustomization.yaml \
hack/k8s-patch/metadata-patch/values.yaml helm-charts-k8s/values.yaml \
- hack/openshift-patch/metadata-patch/values.yaml \
+ hack/openshift-patch/metadata-patch/values.yaml helm-charts-openshift/values.yaml \
example/networkconfig.yaml
sed -i -e 's|tag:.*$$|tag: ${KMM_IMAGE_TAG}|' \
-e 's|repository:.*operator.*$$|repository: ${KMM_OPERATOR_IMG_NAME}|' \
@@ -212,6 +223,60 @@ update-version: ## Update the Project version in helm charts based on ${PROJECT_
sed -i 's|network-operator-utils:v[^ "]*|network-operator-utils:${PROJECT_VERSION}|' internal/controllers/upgrademgr.go internal/utils.go
sed -i 's|k8s-network-device-plugin:v[^ "]*|k8s-network-device-plugin:${PROJECT_VERSION}|' internal/deviceplugin/deviceplugin.go
sed -i 's|device-metrics-exporter:nic-v[^ "]*|device-metrics-exporter:nic-${PROJECT_VERSION}|' internal/metricsexporter/exporter.go
+ # updating image tags in OLM CSV base (flows into bundle via make bundle)
+ sed -i 's|k8s-network-device-plugin:v[^ "]*|k8s-network-device-plugin:${PROJECT_VERSION}|' config/manifests/bases/amd-network-operator.clusterserviceversion.yaml
+ sed -i 's|k8s-network-node-labeller:v[^ "]*|k8s-network-node-labeller:${PROJECT_VERSION}|' config/manifests/bases/amd-network-operator.clusterserviceversion.yaml
+ sed -i 's|device-metrics-exporter:nic-v[^ "]*|device-metrics-exporter:nic-${PROJECT_VERSION}|' config/manifests/bases/amd-network-operator.clusterserviceversion.yaml
+ # updating image tags in sample and example CRs
+ sed -i 's|k8s-network-device-plugin:v[^ "]*|k8s-network-device-plugin:${PROJECT_VERSION}|' config/samples/amd.com_networkconfigs.yaml
+ sed -i 's|k8s-network-node-labeller:v[^ "]*|k8s-network-node-labeller:${PROJECT_VERSION}|' config/samples/amd.com_networkconfigs.yaml
+
+DOCS_IMAGE_VERSION_FILES = \
+ docs/installation/networkconfig.md \
+ docs/installation/networkconfig-full.md \
+ docs/device_plugin/deviceplugin.md \
+ docs/metrics/exporter.md \
+ docs/upgrades/componentupgrades.md \
+ docs/_static/cluster-validation-job.yaml \
+ example/networkconfig.yaml
+
+DOCS_HELM_VERSION_FILES = \
+ docs/installation/kubernetes-helm.md \
+ docs/upgrades/upgrade.md
+
+.PHONY: update-docs-version
+update-docs-version: ## Update image tags, helm versions, and compat matrix in docs and examples
+ # updating image tags in docs and examples
+ sed -i 's|k8s-network-device-plugin:v[^ "`()]*|k8s-network-device-plugin:${PROJECT_VERSION}|' $(DOCS_IMAGE_VERSION_FILES)
+ sed -i 's|k8s-network-node-labeller:v[^ "`()]*|k8s-network-node-labeller:${PROJECT_VERSION}|' $(DOCS_IMAGE_VERSION_FILES)
+ sed -i 's|device-metrics-exporter:nic-v[^ "`()]*|device-metrics-exporter:nic-${PROJECT_VERSION}|' $(DOCS_IMAGE_VERSION_FILES)
+ sed -i 's|k8s-cni-plugins:v[^ "`()]*|k8s-cni-plugins:${PROJECT_VERSION}|' $(DOCS_IMAGE_VERSION_FILES)
+ sed -i 's|network-operator-utils:v[^ "`()]*|network-operator-utils:${PROJECT_VERSION}|' $(DOCS_IMAGE_VERSION_FILES)
+ # updating helm version references in docs
+ sed -i 's|--version=v[0-9][^ ]*|--version=${PROJECT_VERSION}|' $(DOCS_HELM_VERSION_FILES)
+ sed -i 's|image\.tag=v[0-9][^ ]*|image.tag=${PROJECT_VERSION}|' $(DOCS_HELM_VERSION_FILES)
+ sed -i '/controllerManager\.manager\.image\.tag/s|`"v[0-9][^"]*"`|`"${PROJECT_VERSION}"`|' $(DOCS_HELM_VERSION_FILES)
+ # updating network operator helm version in co-install guide (skip GPU operator commands)
+ sed -i '/network-operator-charts/,+5 s|--version=v[0-9][^ ]*|--version=${PROJECT_VERSION}|' docs/installation/kubernetes-helm-operators.md
+ # updating compatibility matrix in docs/index.md
+ @AINIC_FW=$$(echo '${AINIC_VERSIONS}' | sed 's/,/
/g'); \
+ ROW=$$(printf "| %-16s | %-30s | %-14s |" "${PROJECT_VERSION}" "$${AINIC_FW}" "Pollara 400"); \
+ sed -i '/^| ${PROJECT_VERSION} /d' docs/index.md; \
+ LAST_LINE=$$(grep -n 'Pollara 400' docs/index.md | tail -1 | cut -d: -f1); \
+ if [ -n "$$LAST_LINE" ]; then \
+ sed -i "$${LAST_LINE} a $$ROW" docs/index.md; \
+ else \
+ echo "WARNING: Could not find compat matrix. Add manually: $$ROW"; \
+ fi
+
+.PHONY: update-version-in-ci
+update-version-in-ci: ## Update project version and helm chart references in CI job config (.job.yml) and asset-push script
+ sed -i -e 's|PROJECT_VERSION=v[^ ]*|PROJECT_VERSION=${PROJECT_VERSION}|' .job.yml
+ sed -i '0,/HELM_CHARTS_VERSION=/s|HELM_CHARTS_VERSION=[^ ]*|HELM_CHARTS_VERSION=$${RELEASE:-${PROJECT_VERSION}-dev}|' .job.yml
+ sed -i '0,/BUNDLE_VERSION=/s|BUNDLE_VERSION=[^ ]*|BUNDLE_VERSION=$${RELEASE:-${PROJECT_VERSION}-dev}|' .job.yml
+ sed -i 's|network-operator-helm-k8s-[^$$].*\.tgz|network-operator-helm-k8s-${HELM_CHARTS_VERSION}.tgz|' .job.yml
+ sed -i 's|network-operator-helm-openshift-.*\.tgz|network-operator-helm-openshift-${HELM_CHARTS_VERSION}.tgz|' .job.yml
+ sed -i 's|PROJECT_VERSION:-.*$$|PROJECT_VERSION:-${PROJECT_VERSION}\}|' asset-build/networkoperator-asset-push.sh
.PHONY: manifests
manifests: controller-gen update-registry update-version ## Generate ClusterRole and CustomResourceDefinition objects.
@@ -296,6 +361,11 @@ lint: golangci-lint ## Run golangci-lint against code.
fi
$(GOLANGCI_LINT) run -v --timeout 5m0s
+.PHONY: docs-lint
+docs-lint: ## Run docs Markdown lint + spelling.
+ markdownlint-cli2 "**/*.md" --config docs/.markdownlint-cli2.yaml
+ pyspelling -c .spellcheck.yaml
+
##@ Build
manager: $(shell find -name "*.go") go.mod go.sum ## Build manager binary.
@@ -448,6 +518,7 @@ bundle-build: operator-sdk manifests kustomize
PKG=amd-network-operator \
SOURCE_DIR=$(dir $(realpath $(lastword $(MAKEFILE_LIST)))) \
KUBECTL_CMD=${KUBECTL_CMD} ./hack/generate-bundle
+ cp hack/device-plugin-configmap.yaml bundle/manifests/
${OPERATOR_SDK} bundle validate ./bundle
$(CONTAINER_ENGINE) build -f bundle.Dockerfile -t $(BUNDLE_IMG) .
diff --git a/config/manifests/bases/amd-network-operator.clusterserviceversion.yaml b/config/manifests/bases/amd-network-operator.clusterserviceversion.yaml
index 45e00374..58f65b0e 100644
--- a/config/manifests/bases/amd-network-operator.clusterserviceversion.yaml
+++ b/config/manifests/bases/amd-network-operator.clusterserviceversion.yaml
@@ -9,7 +9,7 @@ metadata:
description: |-
Operator responsible for deploying AMD Network kernel drivers, device plugin, node labeller and device metrics exporter
For more information, visit [documentation](https://instinct.docs.amd.com/projects/network-operator/en/latest/)
- devicePluginImage: docker.io/rocm/k8s-network-device-plugin:v0.0.1
+ devicePluginImage: docker.io/rocm/k8s-network-device-plugin:v1.2.1
features.operators.openshift.io/disconnected: "true"
features.operators.openshift.io/fips-compliant: "false"
features.operators.openshift.io/proxy-aware: "true"
@@ -17,8 +17,8 @@ metadata:
features.operators.openshift.io/token-auth-aws: "false"
features.operators.openshift.io/token-auth-azure: "false"
features.operators.openshift.io/token-auth-gcp: "false"
- metricsExporterImage: docker.io/rocm/device-metrics-exporter:nic-v0.0.1
- nodelabellerImage: docker.io/rocm/k8s-network-node-labeller:v0.0.1
+ metricsExporterImage: docker.io/rocm/device-metrics-exporter:nic-v1.2.1
+ nodelabellerImage: docker.io/rocm/k8s-network-node-labeller:v1.2.1
operatorframework.io/cluster-monitoring: "true"
operatorframework.io/suggested-namespace: openshift-amd-network
operators.openshift.io/valid-subscription: '[]'
diff --git a/config/samples/amd.com_networkconfigs.yaml b/config/samples/amd.com_networkconfigs.yaml
index cc41cfe4..73439ba9 100644
--- a/config/samples/amd.com_networkconfigs.yaml
+++ b/config/samples/amd.com_networkconfigs.yaml
@@ -44,12 +44,12 @@ spec:
devicePlugin:
# Specify the device plugin image
- # default value is rocm/k8s-network-device-plugin:v0.0.1
- devicePluginImage: rocm/k8s-network-device-plugin:v0.0.1
+ # default value is rocm/k8s-network-device-plugin:v1.2.1
+ devicePluginImage: rocm/k8s-network-device-plugin:v1.2.1
# Specify the node labeller image
- # default value is rocm/k8s-network-node-labeller:v0.0.1
- nodeLabellerImage: rocm/k8s-network-node-labeller:v0.0.1
+ # default value is rocm/k8s-network-node-labeller:v1.2.1
+ nodeLabellerImage: rocm/k8s-network-node-labeller:v1.2.1
# Specifythe node to be managed by this NetworkConfig Custom Resource
selector:
diff --git a/docs/_static/cluster-validation-job.yaml b/docs/_static/cluster-validation-job.yaml
index 0a79d7b1..6f978a98 100644
--- a/docs/_static/cluster-validation-job.yaml
+++ b/docs/_static/cluster-validation-job.yaml
@@ -32,7 +32,7 @@ data:
emptyDir: {}
initContainers:
- name: wait-for-worker-pods
- image: docker.io/rocm/network-operator-utils:v1.2.0
+ image: docker.io/rocm/network-operator-utils:v1.2.1
imagePullPolicy: Always
envFrom:
- configMapRef:
@@ -365,7 +365,7 @@ spec:
args: ['-c', '/fluent-bit/etc/fluent-bit.conf']
containers:
- name: submit-mpijob
- image: docker.io/rocm/network-operator-utils:v1.2.0
+ image: docker.io/rocm/network-operator-utils:v1.2.1
imagePullPolicy: Always
command: ["/bin/bash", "-c"]
envFrom:
diff --git a/docs/device_plugin/deviceplugin.md b/docs/device_plugin/deviceplugin.md
index 4a7c6d2a..1d971d09 100644
--- a/docs/device_plugin/deviceplugin.md
+++ b/docs/device_plugin/deviceplugin.md
@@ -16,14 +16,14 @@ spec:
# Enable the Node Labeller component (default: true)
enableNodeLabeller: true
- # Specify the Node Labeller image (default: docker.io/rocm/k8s-network-node-labeller:v1.2.0)
- nodeLabellerImage: "docker.io/rocm/k8s-network-node-labeller:v1.2.0"
+ # Specify the Node Labeller image (default: docker.io/rocm/k8s-network-node-labeller:v1.2.1)
+ nodeLabellerImage: "docker.io/rocm/k8s-network-node-labeller:v1.2.1"
# Node labeller image pull policy
nodeLabellerImagePullPolicy: Always
- # Specify the Device Plugin image (default: docker.io/rocm/k8s-network-device-plugin:v1.2.0)
- devicePluginImage: "docker.io/rocm/k8s-network-device-plugin:v1.2.0"
+ # Specify the Device Plugin image (default: docker.io/rocm/k8s-network-device-plugin:v1.2.1)
+ devicePluginImage: "docker.io/rocm/k8s-network-device-plugin:v1.2.1"
# Device plugin image pull policy
devicePluginImagePullPolicy: Always
diff --git a/docs/index.md b/docs/index.md
index 1f8c4e0c..ef1ee228 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -24,10 +24,11 @@ AMD Network Operator simplifies the use of AMD AINICs in Kubernetes environments
Below is a list of operating systems and Kubernetes versions validated with the AMD Network Operator and Metrics Exporter.
Additional versions will be added in future releases.
-| Operating System | Kubernetes Versions |
-| ---------------- | ------------------- |
-| Ubuntu 22.04 LTS | 1.29 – 1.34 |
-| Ubuntu 24.04 LTS | 1.29 – 1.34 |
+| Operating System | Kubernetes | Red Hat OpenShift |
+| ---------------- | ---------- | ----------------- |
+| Ubuntu 22.04 LTS | 1.29–1.36 | |
+| Ubuntu 24.04 LTS | 1.29–1.36 | |
+| Red Hat CoreOS (RHCOS) | | 4.21 |
### Software Version Compatibility Matrix
@@ -37,6 +38,7 @@ Additional versions will be added in future releases.
| v1.0.1 | 1.117.1-a-63 | Pollara 400 |
| v1.1.0 | 1.117.5-a-56 | Pollara 400 |
| v1.2.0 | 1.117.5-a-56
1.117.5-a-77 | Pollara 400 |
+| v1.2.1 | 1.117.5-a-77
1.117.5-a-147 | Pollara 400 |
## Prerequisites
diff --git a/docs/installation/kubernetes-helm-operators.md b/docs/installation/kubernetes-helm-operators.md
index bfb815f6..4b2761b6 100644
--- a/docs/installation/kubernetes-helm-operators.md
+++ b/docs/installation/kubernetes-helm-operators.md
@@ -180,7 +180,7 @@ helm install amd-network-operator rocm-network/network-operator-charts \
--create-namespace \
--set kmm.enabled=false \
--set node-feature-discovery.enabled=false \
- --version=v1.2.0
+ --version=v1.2.1
```
Then during this step only the network operator and multus CNI pods would be brought up in the new namespace `kube-amd-network`:
diff --git a/docs/installation/kubernetes-helm.md b/docs/installation/kubernetes-helm.md
index 8991ad47..22229570 100644
--- a/docs/installation/kubernetes-helm.md
+++ b/docs/installation/kubernetes-helm.md
@@ -111,7 +111,7 @@ Basic installation:
helm install amd-network-operator rocm-network/network-operator-charts \
--namespace kube-amd-network \
--create-namespace \
- --version=v1.2.0
+ --version=v1.2.1
```
```{note}
@@ -143,7 +143,7 @@ helm show values rocm/network-operator-charts
| Key | Type | Default | Description |
| ----- | ------ | --------- | ------------- |
| controllerManager.manager.image.repository | string | `"docker.io/rocm/network-operator"` | AMD Network operator controller manager image repository |
-| controllerManager.manager.image.tag | string | `"v1.2.0"` | AMD Network operator controller manager image tag |
+| controllerManager.manager.image.tag | string | `"v1.2.1"` | AMD Network operator controller manager image tag |
| controllerManager.manager.imagePullPolicy | string | `"Always"` | Image pull policy for AMD Network operator controller manager pod |
| controllerManager.manager.imagePullSecrets | string | `""` | Image pull secret name for pulling AMD Network operator controller manager image if registry needs credential to pull image |
| controllerManager.manager.resources.limits.cpu | string | `"1000m"` | CPU limits for the controller manager. Consider increasing for large clusters |
@@ -235,7 +235,7 @@ You can apply resource changes by updating your values.yaml file and upgrading t
helm upgrade amd-network-operator rocm/network-operator-charts \
--debug \
--namespace kube-amd-network \
- --version=v1.2.0
+ --version=v1.2.1
-f values.yaml
```
diff --git a/docs/installation/networkconfig-full.md b/docs/installation/networkconfig-full.md
index 05667bf0..a39262f2 100644
--- a/docs/installation/networkconfig-full.md
+++ b/docs/installation/networkconfig-full.md
@@ -63,7 +63,7 @@ spec:
gracePeriodSeconds: -2
# Device plugin and Node labeller config
devicePlugin:
- devicePluginImage: docker.io/rocm/k8s-network-device-plugin:v1.2.0
+ devicePluginImage: docker.io/rocm/k8s-network-device-plugin:v1.2.1
devicePluginImagePullPolicy: "Always"
devicePluginTolerations:
- key: "example-key"
@@ -75,7 +75,7 @@ spec:
value: "example-value2"
effect: "NoExecute"
enableNodeLabeller: True
- nodeLabellerImage: docker.io/rocm/k8s-network-node-labeller:v1.2.0
+ nodeLabellerImage: docker.io/rocm/k8s-network-node-labeller:v1.2.1
nodeLabellerImagePullPolicy: "Always"
nodeLabellerTolerations:
- key: "example-key"
@@ -95,7 +95,7 @@ spec:
port: 5001
serviceType: "NodePort"
nodePort: 32501
- image: docker.io/rocm/device-metrics-exporter:nic-v1.2.0
+ image: docker.io/rocm/device-metrics-exporter:nic-v1.2.1
imagePullPolicy: "Always"
imageRegistrySecret:
name: my-secret
@@ -129,7 +129,7 @@ spec:
secondaryNetwork:
cniPlugins:
enable: True
- image: docker.io/rocm/k8s-cni-plugins:v1.2.0
+ image: docker.io/rocm/k8s-cni-plugins:v1.2.1
imagePullPolicy: "Always"
imageRegistrySecret:
name: my-secret
@@ -147,7 +147,7 @@ spec:
initContainerImage: busybox:1.36
utilsContainer:
# -- network operator utility container image used for driver upgrade
- image: docker.io/rocm/network-operator-utils:v1.2.0
+ image: docker.io/rocm/network-operator-utils:v1.2.1
# -- utility container image pull policy
imagePullPolicy: IfNotPresent
# -- utility container image pull secret, e.g. {"name": "mySecretName"}
diff --git a/docs/installation/networkconfig.md b/docs/installation/networkconfig.md
index bf324e03..d423ab10 100644
--- a/docs/installation/networkconfig.md
+++ b/docs/installation/networkconfig.md
@@ -27,8 +27,8 @@ spec:
# Device plugin and Node labeller config
devicePlugin:
enableNodeLabeller: True
- nodeLabellerImage: docker.io/rocm/k8s-network-node-labeller:v1.2.0
- devicePluginImage: docker.io/rocm/k8s-network-device-plugin:v1.2.0
+ nodeLabellerImage: docker.io/rocm/k8s-network-node-labeller:v1.2.1
+ devicePluginImage: docker.io/rocm/k8s-network-device-plugin:v1.2.1
# Metrics exporter config
metricsExporter:
@@ -37,13 +37,13 @@ spec:
serviceType: "NodePort"
nodePort: 32501
hostNetwork: true
- image: docker.io/rocm/device-metrics-exporter:nic-v1.2.0
+ image: docker.io/rocm/device-metrics-exporter:nic-v1.2.1
# Secondary network config
secondaryNetwork:
cniPlugins:
enable: True
- image: docker.io/rocm/k8s-cni-plugins:v1.2.0
+ image: docker.io/rocm/k8s-cni-plugins:v1.2.1
# Specify the node to be managed by this NetworkConfig Custom Resource
selector:
@@ -80,8 +80,8 @@ To check the full spec of `NetworkConfig` definition, run `kubectl get crds netw
| Parameter | Description | Default |
| --------- | ----------- | ------- |
-| `devicePluginImage` | AMD Network device plugin image | `docker.io/rocm/k8s-network-device-plugin:v1.2.0` |
-| `nodeLabellerImage` | Node labeller image | `docker.io/rocm/k8s-network-node-labeller:v1.2.0` |
+| `devicePluginImage` | AMD Network device plugin image | `docker.io/rocm/k8s-network-device-plugin:v1.2.1` |
+| `nodeLabellerImage` | Node labeller image | `docker.io/rocm/k8s-network-node-labeller:v1.2.1` |
| `imageRegistrySecret.name` | Name of registry credentials secret
to pull device plugin / node labeller image | |
| `enableNodeLabeller` | enable / disable node labeller | `true` |
@@ -101,7 +101,7 @@ To check the full spec of `NetworkConfig` definition, run `kubectl get crds netw
| Parameter | Description | Default |
| --------- | ----------- | ------- |
| `cniPlugins.enable` | Enable/disable CNI plugins | `false` |
-| `cniPlugins.image` | CNI plugins image | `docker.io/rocm/cni-plugins:v1.2.0` |
+| `cniPlugins.image` | CNI plugins image | `docker.io/rocm/k8s-cni-plugins:v1.2.1` |
| `cniPlugins.imageRegistrySecret.name` | Name of registry credentials secret
to pull metrics exporter image | |
#### `spec.selector` Parameters
diff --git a/docs/metrics/exporter.md b/docs/metrics/exporter.md
index 08a873a0..a665ee41 100644
--- a/docs/metrics/exporter.md
+++ b/docs/metrics/exporter.md
@@ -16,7 +16,7 @@ spec:
enable: true
# Specify the Metrics Exporter image
- image: "docker.io/rocm/device-metrics-exporter:nic-v1.2.0"
+ image: "docker.io/rocm/device-metrics-exporter:nic-v1.2.1"
# Image pull policy (default: IfNotPresent, or Always if tag is :latest)
imagePullPolicy: "IfNotPresent"
diff --git a/docs/upgrades/componentupgrades.md b/docs/upgrades/componentupgrades.md
index 5981cca6..34353f4a 100644
--- a/docs/upgrades/componentupgrades.md
+++ b/docs/upgrades/componentupgrades.md
@@ -56,7 +56,7 @@ The current image the Device Plugin Daemonset is using can be checked by using `
```yaml
device-plugin:
Container ID: containerd://b1aaa67ebdd87d4ef0f2a32b76b428068d24c28ced3e86c3c5caba39bb5689a4
- Image: rocm/k8s-network-device-plugin:v1.2.0
+ Image: rocm/k8s-network-device-plugin:v1.2.1
```
### 3. Upgrade the Image of Device Plugin Daemonset
@@ -71,7 +71,7 @@ Old CR:
```yaml
devicePlugin:
- devicePluginImage: rocm/k8s-network-device-plugin:v1.2.0
+ devicePluginImage: rocm/k8s-network-device-plugin:v1.2.1
```
Updated CR:
@@ -109,7 +109,7 @@ Old CR:
enable: True
serviceType: "ClusterIP"
port: 5001
- image: rocm/device-metrics-exporter:nic-v1.2.0
+ image: rocm/device-metrics-exporter:nic-v1.2.1
```
Updated CR:
@@ -119,7 +119,7 @@ Updated CR:
enable: True
serviceType: "ClusterIP"
port: 5001
- image: rocm/device-metrics-exporter:nic-v1.2.0
+ image: rocm/device-metrics-exporter:nic-v1.2.1
upgradePolicy:
upgradeStrategy: OnDelete
```
diff --git a/docs/upgrades/upgrade.md b/docs/upgrades/upgrade.md
index c1c57c21..69c46db4 100644
--- a/docs/upgrades/upgrade.md
+++ b/docs/upgrades/upgrade.md
@@ -42,7 +42,7 @@ Upgrade the operator using the following command:
```bash
helm upgrade amd-network-operator rocm/network-operator-charts \
-n kube-amd-network \
- --version=v1.2.0 \
+ --version=v1.2.1 \
--recreate-pods \
--debug
```
@@ -54,10 +54,10 @@ helm upgrade amd-network-operator rocm/network-operator-charts \
# Perform helm upgrade
helm upgrade amd-network-operator rocm/network-operator-charts \
-n kube-amd-network \
- --version=v1.2.0 \
+ --version=v1.2.1 \
--debug \
--set controllerManager.manager.image.repository=docker.io/rocm/network-operator \
- --set controllerManager.manager.image.tag=v1.2.0
+ --set controllerManager.manager.image.tag=v1.2.1
```
```{note}
diff --git a/example/networkconfig.yaml b/example/networkconfig.yaml
index abea4a42..5160ad6f 100644
--- a/example/networkconfig.yaml
+++ b/example/networkconfig.yaml
@@ -42,12 +42,12 @@ spec:
enableNodeLabeller: True
# node labeller image
- # default value is rocm/k8s-network-node-labeller:v1.2.0
- nodeLabellerImage: docker.io/rocm/k8s-network-node-labeller:v1.2.0
+ # default value is rocm/k8s-network-node-labeller:v1.2.1
+ nodeLabellerImage: docker.io/rocm/k8s-network-node-labeller:v1.2.1
# Specify the device plugin image
- # default value is rocm/k8s-network-device-plugin:v1.2.0
- devicePluginImage: docker.io/rocm/k8s-network-device-plugin:v1.2.0
+ # default value is rocm/k8s-network-device-plugin:v1.2.1
+ devicePluginImage: docker.io/rocm/k8s-network-device-plugin:v1.2.1
# Specify Device Plugin image pull policy
# default value is IfNotPresent for valid tags, Always for no tag or "latest" tag
@@ -77,8 +77,8 @@ spec:
nodePort: 32501
# exporter image
- # default value is docker.io/rocm/device-metrics-exporter:nic-v1.2.0
- image: docker.io/rocm/device-metrics-exporter:nic-v1.2.0
+ # default value is docker.io/rocm/device-metrics-exporter:nic-v1.2.1
+ image: docker.io/rocm/device-metrics-exporter:nic-v1.2.1
# image pull policy for metrics exporter
# default value is IfNotPresent for valid tags, Always for no tag or "latest" tag
@@ -101,7 +101,7 @@ spec:
# CNI plugin configuration
cniPlugins:
enable: True
- image: docker.io/rocm/k8s-cni-plugins:v1.2.0
+ image: docker.io/rocm/k8s-cni-plugins:v1.2.1
imagePullPolicy: "Always"
# image registry secret used to pull/push images
imageRegistrySecret:
@@ -112,7 +112,7 @@ spec:
initContainerImage: busybox:1.36
utilsContainer:
# -- network operator utility container image used for driver upgrade
- image: docker.io/rocm/network-operator-utils:v1.2.0
+ image: docker.io/rocm/network-operator-utils:v1.2.1
# -- utility container image pull policy
imagePullPolicy: IfNotPresent
# -- utility container image pull secret, e.g. {"name": "mySecretName"}
diff --git a/internal/controllers/upgrademgr.go b/internal/controllers/upgrademgr.go
index e2618e54..538fee0f 100644
--- a/internal/controllers/upgrademgr.go
+++ b/internal/controllers/upgrademgr.go
@@ -64,7 +64,7 @@ import (
)
const (
- defaultUtilsImage = "docker.io/rocm/network-operator-utils:v1.2.0"
+ defaultUtilsImage = "docker.io/rocm/network-operator-utils:v1.2.1"
defaultOcUtilsImage = "docker.io/rocm/network-operator-utils:rhubi-latest"
defaultSAName = "amd-network-operator-utils-container"
driverUpgradeStateLabelKey = "operator.amd.com/network-driver-upgrade-state"
diff --git a/internal/deviceplugin/deviceplugin.go b/internal/deviceplugin/deviceplugin.go
index 78778d82..eeb9258e 100644
--- a/internal/deviceplugin/deviceplugin.go
+++ b/internal/deviceplugin/deviceplugin.go
@@ -30,7 +30,7 @@ import (
const (
defaultInitContainerImage = "busybox:1.36"
- defaultDevicePluginImage = "docker.io/rocm/k8s-network-device-plugin:v1.2.0"
+ defaultDevicePluginImage = "docker.io/rocm/k8s-network-device-plugin:v1.2.1"
defaultDevicePluginConfigMap = "amd-network-operator-device-plugin-config"
devicePluginSAName = "amd-network-operator-device-plugin"
DevicePluginName = "device-plugin"
diff --git a/internal/metricsexporter/exporter.go b/internal/metricsexporter/exporter.go
index 9bef57e6..675aa00f 100644
--- a/internal/metricsexporter/exporter.go
+++ b/internal/metricsexporter/exporter.go
@@ -34,7 +34,7 @@ const (
exporterSAName = "amd-network-operator-metrics-exporter"
kubeRBACSAName = "amd-network-operator-metrics-exporter-rbac-proxy"
StaticAuthSecretName = ExporterName + "-static-auth-config"
- defaultMetricsExporterImage = "docker.io/rocm/device-metrics-exporter:nic-v1.2.0"
+ defaultMetricsExporterImage = "docker.io/rocm/device-metrics-exporter:nic-v1.2.1"
defaultInitContainerImage = "busybox:1.36"
svcLabel = "app.kubernetes.io/service"
)
diff --git a/internal/nodelabeller/nodelabeller.go b/internal/nodelabeller/nodelabeller.go
index efbd958a..b748eedd 100644
--- a/internal/nodelabeller/nodelabeller.go
+++ b/internal/nodelabeller/nodelabeller.go
@@ -28,7 +28,7 @@ import (
)
const (
- defaultNodeLabellerUbiImage = "docker.io/rocm/k8s-network-node-labeller:v1.2.0"
+ defaultNodeLabellerUbiImage = "docker.io/rocm/k8s-network-node-labeller:v1.2.1"
defaultInitContainerImage = "busybox:1.36"
defaultBlacklistFileName = "blacklist-ionic-netop.conf"
nodeLabellerSAName = "amd-network-operator-node-labeller"
diff --git a/internal/secondarynetwork/cniplugins.go b/internal/secondarynetwork/cniplugins.go
index 3b9f7370..87917313 100644
--- a/internal/secondarynetwork/cniplugins.go
+++ b/internal/secondarynetwork/cniplugins.go
@@ -28,7 +28,7 @@ import (
)
const (
- defaultCNIPluginsImage = "docker.io/rocm/k8s-cni-plugins:v1.2.0"
+ defaultCNIPluginsImage = "docker.io/rocm/k8s-cni-plugins:v1.2.1"
CNIPluginsName = "cni-plugins"
cniPluginsSAName = "amd-network-operator-cni-plugins"
)
diff --git a/internal/utils.go b/internal/utils.go
index 870c244d..aa139da9 100644
--- a/internal/utils.go
+++ b/internal/utils.go
@@ -40,7 +40,7 @@ const (
ResourceNamingStrategyFlag = "resource_naming_strategy"
SingleStrategy = "single"
MixedStrategy = "mixed"
- DefaultUtilsImage = "docker.io/rocm/network-operator-utils:v1.2.0"
+ DefaultUtilsImage = "docker.io/rocm/network-operator-utils:v1.2.1"
// worker pod related constants
KindNetworkConfig = "NetworkConfig"