Update helm version 27/14927/6
authorBimo Fransiscus Asisi <d11002806@gapps.ntust.edu.tw>
Thu, 18 Sep 2025 02:10:58 +0000 (10:10 +0800)
committerBimo Fransiscus Asisi <d11002806@gapps.ntust.edu.tw>
Fri, 19 Sep 2025 15:10:09 +0000 (23:10 +0800)
This commit does the following:
1. Bump kubernetes and helm versions
2. Handle debian versioning and remove it from KUBERVERSION

Issue-Id: INT-199
Change-Id: If9b63897edd61f0b29051b7980fc5cc42811200c
Signed-off-by: Bimo Fransiscus Asisi <d11002806@gapps.ntust.edu.tw>
tools/setup_k8s/README.md
tools/setup_k8s/scripts/setup_k8s.sh

index 24a97f3..a2e2c10 100644 (file)
@@ -1,5 +1,8 @@
+# Kubernetes Auto Deployment 
 
+This tool install kubernetes with its dependencies optimized for O-RAN SC SMO deployment.
 
+## Directory Structure
 ````
 setup_k8s/
 ├── Makefile              
@@ -9,3 +12,9 @@ setup_k8s/
 │   └── chartmuseum.sh   # Install Chartmuseum + plugins
 └── README.md               
 ````
+
+
+## How to use
+```
+ make run IP=<ip_address> SUDO=sudo
+```
\ No newline at end of file
index 3b274f7..3eb4c9e 100755 (executable)
@@ -21,8 +21,8 @@ start_time=$(date +%s)
 workspace=$(pwd)
 
 # Define default values
-DEFAULT_KUBEVERSION="1.32.3-1.1"
-DEFAULT_HELMVERSION="3.14.2"
+DEFAULT_KUBEVERSION="1.32.8"
+DEFAULT_HELMVERSION="3.18.6"
 DEFAULT_POD_CIDR="10.244.0.0/16"
 
 # Parse command-line arguments
@@ -191,7 +191,6 @@ check_existing_cluster
 # Disable swap
 disable_swap
 
-# Script for Installing Docker,Kubernetes and Helm
 
 wait_for_pods_running () {
   NS="$2"
@@ -276,19 +275,19 @@ rm  helm-v${HELMVERSION}-linux-amd64.tar.gz
 echo "***************************************************************************************************************"
 echo "                                         Installing Kubernetes                                           "
 echo "***************************************************************************************************************"
+# Derive repo channel (major.minor) for Kubernetes apt source after parsing options
+KUBE_REPO_CHANNEL="$(echo "${KUBEVERSION#v}" | cut -d. -f1,2)"
+KUBE_REPO_URL="https://pkgs.k8s.io/core:/stable:/v${KUBE_REPO_CHANNEL}/deb"
 
-rm /etc/apt/keyrings/kubernetes-apt-keyring.gpg
+rm -f /etc/apt/keyrings/kubernetes-apt-keyring.gpg
 mkdir -p /etc/apt/keyrings
-curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.32/deb/Release.key | gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
-echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.32/deb/ /' | tee /etc/apt/sources.list.d/kubernetes.list
+curl -fsSL "${KUBE_REPO_URL}/Release.key" | gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
+echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] ${KUBE_REPO_URL}/ /" | tee /etc/apt/sources.list.d/kubernetes.list
 apt update
 
-
-apt-cache policy kubelet | grep 'Installed: (none)' -A 1000 | grep 'Candidate:' | awk '{print $2}'
-
 # Installing Kubectl, Kubeadm and kubelet
-
-apt install -y kubeadm=${KUBEVERSION} kubelet=${KUBEVERSION} kubectl=${KUBEVERSION}
+VERSION=$(apt-cache madison kubeadm | awk -v ver="${KUBEVERSION#v}" '$3 == ver"-1.1" {print $3; exit}') # convert actual version to available debian versioning
+apt install -y kubeadm=${VERSION} kubelet=${VERSION} kubectl=${VERSION}
 kubeadm init --apiserver-advertise-address=${IP_ADDR} --pod-network-cidr=${POD_CIDR} --v=5
 
 # For CICD purpose
@@ -311,7 +310,7 @@ mkdir -p "${TARGET_HOME}/.kube"
 cp -i /etc/kubernetes/admin.conf "${TARGET_HOME}/.kube/config"
 
 # Change the ownership to the correct user.
-chown "${TARGET_USER}:${TARGET_USER}" "${TARGET_HOME}/.kube/config"
+chown -R "${TARGET_USER}:${TARGET_USER}" "${TARGET_HOME}/.kube"
 
 # Set the correct permissions for the file.
 chmod 600 "${TARGET_HOME}/.kube/config"
@@ -336,4 +335,4 @@ echo "**************************************************************************
 
 kubectl get pods -A
 
-echo "***************************************************************************************************************"
\ No newline at end of file
+echo "***************************************************************************************************************"