Upgrade Guide CX-4.5.7 to CX-4.6
Before upgrading, ensure that the system is idle, i.e., all agents are logged out from the AgentDesk.
Make sure the system is idle for 30 minutes, to sync the reporting data
Clone the CX repository on the target server
CODE# Create CX-4.6 directory from root mkdir CX-4.6 # Navigate to CX-4.6 cd CX-4.6 # Clone the CX-4.6 branch of cim-solution repository git clone -b CX-4.6 https://efcx:RecRpsuH34yqp56YRFUb@gitlab.expertflow.com/cim/cim-solution.git # Navigate to root(previous) directory cd ..
Stop all core components.
CODE# Navigate to the following folder of the existing release i.e. CX-4.5.7 cd cim-solution/kubernetes kubectl delete -f cim/Deployments kubectl delete -f cim/ConfigMaps kubectl delete -f cim/StatefulSet/ef-amq-statefulset.yaml
Update the AMQ deployment.
CODE1) Open cim/StatefulSet/ef-amq-statefulset.yaml file. 2) Update AMQ Tag gitimages.expertflow.com/general/activemq-k8s:6.0.0-alpine-zulu-K8s--4.6-v2 3) Apply ActiveMQ deployment kubectl apply -f cim/StatefulSet/ef-amq-statefulset.yaml
Update the ConfigMaps.
CODE# Update unified admin Configmap 1) Open kubernetes/cim/ConfigMaps/ef-unified-admin-configmap.yaml file. 2) Add following new environment variables and Replace <FQDN> with your FQDN for Expertflow CX SURVEY_NODERED_URL: https://<FQDN>/survey-studio SURVEY_API_URL: https://<FQDN>/survey-backend CAMPAIGN_NODERED_URL: https://<FQDN>/campaign-studio CAMPAIGN_API_URL: https://<FQDN>/campaigns # Update file Engine URL in following component`s configmaps. FILE_ENGINE_URL: http://ef-file-engine-svc:8080 1) kubernetes/cim/ConfigMaps/ef-360-connector-configmap.yaml 2) kubernetes/cim/ConfigMaps/ef-bot-framework-configmap.yaml 3) kubernetes/cim/ConfigMaps/ef-facebook-connector-configmap.yaml 4) kubernetes/cim/ConfigMaps/ef-instagram-connector-configmap.yaml 5) kubernetes/cim/ConfigMaps/ef-telegram-connector-configmap.yaml 6) kubernetes/cim/ConfigMaps/ef-twilio-connector-configmap.yaml 7) kubernetes/cim/ConfigMaps/ef-twitter-connector-configmap.yaml 8) kubernetes/cim/ConfigMaps/ef-viber-connector-configmap.yaml # Update File engine Configmap 1) Open kubernetes/cim/ConfigMaps/ef-file-engine-configmap.yaml file. 2) Update following environment variables USESSL: "false" # Update state event logger Configmap 1) Open kubernetes/cim/ConfigMaps/ef-state-events-logger-configmap.yam file. 2) add the following enviroment varibles. BATCH_TIMER_IN_SECONDS: "5" MAX_IDLE_CYCLES: "10" # Update Routing Engine configmap 1) Open kubernetes/cim/ConfigMaps/ef-routing-engine-configmap.yaml file. 2) add the following enviroment varibles. IS_QUEUE_PRIORITY_ENABLED: "false"
Update Conversation Controller training
CODE# Update custom training 1) Delete controller configmaps kubectl -n expertflow delete configmap ef-conversation-controller-actions-cm kubectl -n expertflow delete configmap ef-conversation-controller-actions-pycache-cm kubectl -n expertflow delete configmap ef-conversation-controller-actions-utils-cm 2) Copy actions folder Copy CX-4.6/cim-solution/kubernetes/pre-deployment/conversation-Controller/actions into current release cim-solution/kubernetes/pre-deployment/conversation-Controller 3) Create configMaps kubectl -n expertflow create configmap ef-conversation-controller-actions-cm --from-file=pre-deployment/conversation-Controller/actions kubectl -n expertflow create configmap ef-conversation-controller-actions-utils-cm --from-file=pre-deployment/conversation-Controller/utils kubectl -n expertflow create configmap ef-conversation-controller-actions-pycache-cm --from-file=pre-deployment/conversation-Controller/__pycache__
Update following core deployments.
Update the replica count for components as per your workload.
# update deployment
1) Copy deployment folder
Copy CX-4.6/cim-solution/kubernetes/cim/Deployments into current release
cim-solution/kubernetes/cim/Deployments
Update following Services
CODE# Update File engine Service 1) kubectl delete -f kubernetes/cim/Services/ef-file-engine-service.yaml 2) Open kubernetes/cim/Services/ef-file-engine-service.yaml file. 3) update the annotation with http annotations: traefik.ingress.kubernetes.io/service.serversscheme: http 4) change the port and targetPort to 8080 ports: - name: ef-file-engine-svc-8080 port: 8080 targetPort: https-fi-m-8080 5) kubectl apply -f kubernetes/cim/Services/ef-file-engine-service.yaml
Update following Ingress
CODEFOR RKE # Update File engine Ingress 1) kubectl delete -f kubernetes/cim/Ingresses/nginx/ef-file-engine-Ingress.yaml 2) Open kubernetes/cim/Ingresses/nginx/ef-file-engine-Ingress.yaml file. 2) Remove the following lines. nginx.ingress.kubernetes.io/backend-protocol: HTTPS nginx.ingress.kubernetes.io/proxy-body-size: 20m nginx.ingress.kubernetes.io/proxy-connect-timeout: 600s nginx.ingress.kubernetes.io/proxy-read-timeout: 600s nginx.ingress.kubernetes.io/proxy-send-timeout: 600s 3) Add the following Annotation annotations: nginx.ingress.kubernetes.io/proxy-body-size: 8m 4) change the port port: number: 8080 5) kubectl apply -f kubernetes/cim/Ingresses/nginx/ef-file-engine-Ingress.yaml FOR K3s # Update File engine Ingress 1) kubectl delete -f kubernetes/cim/Ingresses/traefik/ef-file-engine-Ingress.yaml 2) Open kubernetes/cim/Ingresses/traefik/ef-file-engine-Ingress.yaml file. 3) change the port port: number: 8080 4) kubectl apply -f kubernetes/cim/Ingresses/traefik/ef-file-engine-Ingress.yaml
Start all Deployment.
CODE# Apply all deployments kubectl apply -f cim/Deployments kubectl apply -f cim/ConfigMaps
Update the report
Configuration Guide Update Reports on Superset 2.0 - Expertflow CX - Expertflow CX
survey section is optional
Survey Deployment
CODE1) Copy cx-surveys folder Copy CX-4.6/cim-solution/kubernetes/cx-surveys into current release cim-solution/kubernetes/
Deployment guide for Survey
campaigns section is optional
Campaigns Deployment
CODE1) Copy cx-surveys folder Copy CX-4.6/cim-solution/kubernetes/cx-surveys into current release cim-solution/kubernetes/
Deployment guide for Campaigns
Voice Connector Upgrade guide