update scripts to be executable
[rec.git] / workflows / nanobot.sh
diff --git a/workflows/nanobot.sh b/workflows/nanobot.sh
new file mode 100755 (executable)
index 0000000..05f40b8
--- /dev/null
@@ -0,0 +1,65 @@
+#!/bin/bash\r
+#------------------nanobot Pre-modification------------------------------------------------------------\r
+cd RIC/test/ric_robot_suite\r
+#------------------Build the robot suite---------------------------------------------------------------\r
+docker build -t nanobot:latest -f docker/Dockerfile.nanobot .\r
+\r
+#---------pre-create the log file directory- find the value from the values.yaml-----------------------\r
+sudo chown -R cloudadmin /opt\r
+mkdir -p /opt/ric/robot/log\r
+\r
+kubectl create namespace rictest\r
+kubectl create namespace ricxapp\r
+\r
+#----------create ricplatform danmnet-------------------------------------------------------------------\r
+cat <<!   | kubectl apply -f -\r
+apiVersion: danm.k8s.io/v1\r
+kind: DanmNet\r
+metadata:\r
+  name: default\r
+  namespace: rictest\r
+spec:\r
+  NetworkID: flannel\r
+  NetworkType: flannel\r
+!\r
+\r
+docker tag nanobot:latest registry.kube-system.svc.rec.io:5555/rictest/nanobot:latest\r
+docker push registry.kube-system.svc.rec.io:5555/rictest/nanobot:latest\r
+pwd\r
+cd helm/nanobot\r
+#--------edit the values.yaml file in the helm chart for nanobot to point to local registry--------------\r
+values_files="$(find . -name values.yaml)"\r
+for file in $values_files; do\r
+  #sed -ri 's/^(\s*)(run\s*:\s*nanobot\s*$)/\1run: registry.kube-system.svc.rec.io:5555/rictest/nanobot/' "$file"\r
+  sed -i 's/  domain: cluster.local/  domain: rec.io/' "$file"\r
+  sed -i 's/     repository: .*$/     repository: registry.kube-system.svc.rec.io:5555/' "$file"\r
+  sed -i 's/     name: test\/nanobot/     name: rictest\/nanobot/' "$file"\r
+done\r
+\r
+\r
+deployment_files="$(find . -name job-ric-robot-run.yaml)"\r
+for file in $deployment_files; do\r
+  sed -i "/restartPolicy: Never/s//&\\n\      nodeSelector:\n        nodename: caas_master1\n/" "$file"\r
+done\r
+\r
+#-------------------------add the helm chart to the repo-------------------------------------------------\r
+cd ../\r
+mkdir -p dist/packages\r
+pkill helm\r
+helm package -d dist/packages nanobot\r
+helm serve --repo-path dist/packages &\r
+sleep 2\r
+helm repo update\r
+\r
+#-----------------------install the helm chart-----------------------------------------------------------\r
+helm install localric/nanobot --namespace rictest --name nanobot\r
+\r
+nanobot_pod=$(kubectl get pods -n rictest -o go-template --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')\r
+sleep 10\r
+kubectl logs $nanobot_pod -n rictest\r
+\r
+#------------checking the status of the rictest pod--------------------------------------\r
+command="$(kubectl get po --no-headers --namespace=rictest --field-selector status.phase=Completed 2> /dev/null)"\r
+if [[ $command != "" ]]; then\r
+  exit 1\r
+fi\r