Last Updated: Apr 19, 2023
The Jiffy Automate 4.9.X server versions can do a direct upgrade to version 4.10.1.
Name | Version | Type | Description |
---|---|---|---|
jiffy-playbook.tar.gz | 4.10.1 | Ansible playbook | Ansible scripts which does the upgrade |
jiffy-upgrade.tar.gz | 4.10.1 | Compressed tar | Jiffy core artifacts |
jiffy-helms-v4.10.1.zip | 4.10.1 | Compressed zip | Helm charts |
Container | Tags (4.10.1) | HELM Chart Changes |
---|---|---|
backward-comp | JARVIS-MAIN-BackwardCompatibilityEngine8106Mar23 | Yes |
bolcategory | JARVIS-MAIN-vendorcategorisation_15206Mar23 | Yes |
bolml | JARVIS-MAIN-T4.3.022307Mar23 | Yes |
docsplit | JARVIS-MAIN-DocumentSplit_9907Mar23 | Yes |
functionator | JARVIS-MAIN-511 | Yes |
handwritingsegmentation | JARVIS-MAIN-HWSegmentation_16606Mar23 | Yes |
invoicecategory | JARVIS-MAIN-T4.3.022307Mar23 | Yes |
invoiceml | JARVIS-MAIN-T4.3.022307Mar23 | Yes |
pdf2image | JARVIS-MAIN-Pdf2Image_10107Mar23 | Yes |
pdf2json-service | JARVIS-MAIN-Pdf2JsonService_16407Mar23 | Yes |
pdfsplit | JARVIS-MAIN-Pdfsplit_8906Mar23 | Yes |
portfolio | JARVIS-MAIN-Portfolio_40416Mar23 | Yes |
template-converter | JARVIS-MAIN-302 | Yes |
w2ml | JARVIS-MAIN-w2ml_11206Mar23 | Yes |
w2split | JARVIS-MAIN-W2Split_13006Mar23 | Yes |
lineitemmatch | JARVIS-MAIN-LineItemMatch_9007Mar23 | Yes |
- Make sure td-agent conf is compatible with opensearch, since elasticsearch is changed to opensearch.
- Create new index patterns in opensearch as below: jiffy.alice* jiffy.cluster* jiffy.nginxaccess* jiffy.nginxerror* jiffy.bot_log* jiffy.jpipe_log* jiffy.bot_task_logs*
application stop all
- pg_dump -h {DB hostname} -p 5432 {jiffy-schema-name} -U {username} | gzip > {filename.gz}
- pg_dump -h {DB hostname} -p 5432 {gus-schema-name} -U {username} | gzip > {filename.gz}
mongodump –ssl –host {MongoDB hostname} –port 27017 –sslPEMKeyFile {Keyfile the certificate is a combination of ca+cert} –sslAllowInvalidCertificates –authenticationDatabase admin -u admin –out {filename.dump}
- export JIFFY_INSTALL=“/tmp/jiffy-install/4.10.1/”
- mkdir -p $JIFFY_INSTALL/helm/
- cd $JIFFY_INSTALL/helm/
- wget –user {username} –ask-password downloads.jiffy.ai/4.10.1/Upgrade/jiffy-helms-v4.10.1.zip
unzip jiffy-helms-v4.10.1.zip
- cd $JIFFY_INSTALL
- wget –user {username} –ask-password downloads.jiffy.ai/4.10.1/Upgrade/jiffy-playbook.tar.gz
- wget –user {username} –ask-password downloads.jiffy.ai/4.10.1/Upgrade/jiffy-upgrade.tar.gz
- tar -xf jiffy-playbook.tar.gz
- tar -xf jiffy-upgrade.tar.gz -C $JIFFY_INSTALL/upgrade/
Optional for saas environments.
This step will cover code backup, in case of rollback to a previously installed version.
source /opt/jiffy3rdparty/ansibleEnv/bin/activate
For debug mode:
- export JIFFY_INSTALL=“/tmp/jiffy-install/4.10.1/”
- cd $JIFFY_INSTALL
- ansible-playbook pre-upgrade/root.yml -i inventory -e @variable.yml
For detailed debug mode:ansible-playbook pre-upgrade/root.yml -i inventory -e @variable.yml -v
ansible-playbook pre-upgrade/root.yml -i inventory -e @variable.yml -vvvv
chown -R {jiffyapp linux user}:{jiffyapp linux user group} /tmp/jiffy-install
source /opt/jiffy3rdparty/ansibleEnv/bin/activate
For debug mode:ansible-playbook pre-upgrade/non-root.yml -i inventory -e @variable.yml
For detailed debug mode:ansible-playbook pre-upgrade/non-root.yml -i inventory -e @variable.yml -v
ansible-playbook pre-upgrade/non-root.yml -i inventory -e @variable.yml -vvvv
source /opt/jiffy3rdparty/ansibleEnv/bin/activate
For debug mode:
- export JIFFY_INSTALL=“/tmp/jiffy-install/4.10.1/”
- cd $JIFFY_INSTALL
- ansible-playbook pre-req-mail.yml -l core -e @variable.yml
For detailed debug mode:ansible-playbook pre-req-mail.yml -l core -e @variable.yml -v
ansible-playbook pre-req-mail.yml -l core -e @variable.yml -vvvv
source /opt/jiffy3rdparty/ansibleEnv/bin/activate
For debug mode:
- export JIFFY_INSTALL=“/tmp/jiffy-install/4.10.1/”
- cd $JIFFY_INSTALL
- ansible-playbook upgrade/root.yml -i inventory -l core -e @variable.yml
For detailed debug mode:ansible-playbook upgrade/root.yml -i inventory -l core -e @variable.yml -v
ansible-playbook upgrade/root.yml -i inventory -l core -e @variable.yml -vvvv
ansible-playbook upgrade/root.yml -i inventory -l core -e @variable.yml -kK
chown -R {jiffyapp linux user}:{jiffyapp linux user group} /tmp/jiffy-install
source /opt/jiffy3rdparty/ansibleEnv/bin/activate
The Crotab of Jiffy application user is updated on each upgrade and therefore all custom cron jobs must be scheduled outside of the Jiffy application user’s crontab file.
For debug mode:
- export JIFFY_INSTALL=“/tmp/jiffy-install/4.10.1/”
- cd $JIFFY_INSTALL
- ansible-playbook upgrade/non-root.yml -i inventory -l core -e @variable.yml
For detailed debug mode:ansible-playbook upgrade/non-root.yml -i inventory -l core -e @variable.yml -v
ansible-playbook upgrade/non-root.yml -i inventory -l core -e @variable.yml -vvvv
without masterkey prompt:ansible-playbook jiffyconfiguration.yml -l core -e @variable.yml
ansible-playbook jiffyconfiguration.yml -l core -e masterKey=’<replaceme>’ -e @variable.yml
export JIFFY_INSTALL=“/tmp/jiffy-install/4.10.1/” cd $JIFFY_INSTALL/helm/ chmod 777 k8s-upgrade.sh For upgrading opendistro elastic search and kibana Update opendistro-es/values.yml with hostname values Line no 94 and 436 helm upgrade –install opendistro opendistro-es -n jiffy-cognitive Skip the below section if you have done already as part of 4.8.6 upgrade. kubectl create namespace logging Check the Services kubectl get svc Based on the requirement, we can modify the values.yaml file. Depend on the environment may changes in namespace, elasticsearch endpoint and credentials. Update fluent-bit/values.yml with application namespace value Line no 15 and line no 18 helm install -n logging fluent-bit fluent-bit -f fluent-bit/values-fluentbit.yaml
Default values for the ks8-upgrade script.
- namespace(n)=jiffy-cognitive
- replicacount®=1
- mountpoint(m)=/opt
./k8s-upgrade.sh -k ‘{masterkey|mandatory}’ -n {namespace} -c {clusterDNS|mandatory} -r {replicacount} -m {mountpoint}
cat $JIFFY_HOME/productversion.txt
cat $JIFFY_HOME/data/client/setup/version.txt
supervisorctl status
kubectl get pods -n {namespace}
vault status
application stop all
application start all