Upgrade from v9.2.2 to v9.2.4
The guide describes the steps to upgrade SPA from v9.2.2 to v9.2.4.
Prerequisites
- You have WorkFusion SPA 9.2.2 installed.
- All actions for the upgrade from 9.2.2 to 9.2.4 must be performed as <WF_USER>. The Root user is not required.
Upgrade procedure
Prepare DB server for patching
On the DB server, fill in the credentials for MySQL server in file <install_dir>/patches/patch_9.2.4/vars:
export MYSQL_ADMIN='<put your mysql admin username here>' export MYSQL_PASS='<put your mysql admin password here>'On the DB server, verify correctness of entered credentials:
$ source <install_dir>/patches/patch_9.2.4/vars $ <install_dir>/mysql/usr/bin/mysqlcheck -h 127.0.0.1 -P 3306 -u$MYSQL_ADMIN -p$MYSQL_PASS --check-upgrade --all-databasesYou should see output similar to the following:
mysql.columns_priv OK mysql.db OK ........ (lots of similar output) ..... wfdb.worker_interest OK wfdb.workeractivitylog_test OK
Prepare all nodes for patching
Stop services on all Linux servers:
On each Linux server, stop all workfusion services:
$ wfmanager stop allOn each Linux server, except vdsslave, create the patch directory, download and extract the patch into it:
$ mkdir -pv <install_dir>/patches/patch_9.2.4 $ cd <install_dir>/patches/patch_9.2.4 $ curl -o 'patch_9.2.4.tar.gz' '<patch download url>' $ tar xzf patch_9.2.4.tar.gzYou will see the following directory structure as a result:
drwxrwxr-x. 2 wfuser wfuser 38 Jan 24 11:32 apm drwxrwxr-x. 2 wfuser wfuser 89 Feb 13 10:36 ct drwxrwxr-x. 3 wfuser wfuser 228 Feb 13 10:36 db drwxrwxr-x. 2 wfuser wfuser 39 Feb 13 10:36 logstash drwxrwxr-x. 2 wfuser wfuser 64 Jan 24 12:21 ocr -rwxrwxr-x. 1 wfuser wfuser 14086 Feb 12 11:50 patch_9.2.4.sh -rw-rw-r--. 1 wfuser wfuser 1730335096 Feb 13 10:36 patch_9.2.4.tar.gz drwxrwxr-x. 2 wfuser wfuser 93 Feb 13 10:36 rabbitmq drwxrwxr-x. 2 wfuser wfuser 76 Feb 13 10:36 rpa -rwxrwxr-x. 1 wfuser wfuser 43 Feb 12 11:50 vars
Upgrade DB server
On the DB server, execute the following command:
$ cd <install_dir>/patches/patch_9.2.4 $ ./patch_9.2.4.sh upgrade_dbYou will see the following output:
Tue Jan 28 15:11:48 UTC 2020 Updating DB server to version: 9.2.4 Tue Jan 28 15:11:48 UTC 2020 Updating PostgreSQL server to version: 9.5.20 Tue Jan 28 15:11:51 UTC 2020 Backing up PostgreSQL binaries... mkdir: created directory ‘backup’ mkdir: created directory ‘backup/postgres’ Tue Jan 28 15:11:56 UTC 2020 Extracting PostgreSQL binaries... Tue Jan 28 15:12:00 UTC 2020 Extracting PostgreSQL additional components... Tue Jan 28 15:12:03 UTC 2020 PostgreSQL update completed Tue Jan 28 15:12:03 UTC 2020 Updating MongoDB server to version: 3.6.15 Tue Jan 28 15:12:06 UTC 2020 Backing up MongoDB binaries... mkdir: created directory ‘backup/mongodb’ mkdir: created directory ‘backup/mongodb/bin’ Tue Jan 28 15:12:09 UTC 2020 Temporarily disabling MongoDB user authentication Tue Jan 28 15:12:12 UTC 2020 Extracting MongoDB 3.4 binaries... Tue Jan 28 15:12:18 UTC 2020 Updating MongoDB feature compatibility version to 3.4 mongodb_db: started MongoDB shell version v3.4.23 connecting to: mongodb://127.0.0.1:27016/ MongoDB server version: 3.4.23 { "ok" : 1 } Update to version 3.4 was successful. Continue updating to version 3.6 mongodb_db: stopped Tue Jan 28 15:12:23 UTC 2020 Extracting MongoDB 3.6 binaries... Tue Jan 28 15:12:29 UTC 2020 Updating MongoDB feature compatibility version to 3.6 Tue Jan 28 15:12:29 UTC 2020 Ensure MongoDB accepts external connections mongodb_db: started MongoDB shell version v3.6.15 connecting to: mongodb://127.0.0.1:27016/?gssapiServiceName=mongodb Implicit session: session { "id" : UUID("c87ca6fb-fd95-4e74-a223-280a563e3f92") } MongoDB server version: 3.6.15 { "ok" : 1 } Tue Jan 28 15:12:34 UTC 2020 Enabling back MongoDB user authentication mongodb_db: stopped Tue Jan 28 15:12:37 UTC 2020 MongoDB update completed Tue Jan 28 15:12:38 UTC 2020 Backing up mysql binaries... mkdir: created directory ‘backup/mysql’ Tue Jan 28 15:13:01 UTC 2020 Extracting mysql components... Tue Jan 28 15:13:10 UTC 2020 Restoring mysql configuration... Tue Jan 28 15:13:13 UTC 2020 Verifying mysql upgrade status. Admin credentials required. Please, wait for 'Enter password' prompt when mysql service starts mysql: started Enter password: mysql.columns_priv OK mysql.db OK ........ (lots of similar output) ..... wfdb.worker_interest OK wfdb.workeractivitylog_test OK Tue Jan 28 15:13:28 UTC 2020 Mysql update completed. Check for any errors in output Tue Jan 28 15:13:29 UTC 2020 DB server patching completedInspect the output of the MySQL status for any errors or not-ok statuses. It must return the status 'OK' for each test, as in the example earlier. If the check is successful, execute the following command to update the database schema:
$ cd <install_dir> $ mysql/usr/bin/mysql_upgrade -h 127.0.0.1 -P 3306 -u$MYSQL_ADMIN -p$MYSQL_PASS
Upgrade VDS Master server
To upgrade VDS Master, on the vdsmaster server, execute the following command:
$ cd <install_dir>/patches/patch_9.2.4
$ ./patch_9.2.4.sh upgrade_vdsmaster
You will see the following output:
Tue Jan 28 15:24:22 UTC 2020 Updating vdsmaster server to version: 9.2.4
Tue Jan 28 15:24:22 UTC 2020 Backing up rabbitmq binaries...
mkdir: created directory ‘backup’
mkdir: created directory ‘backup/rabbitmq’
Tue Jan 28 15:24:25 UTC 2020 Extracting rabbitmq components...
Tue Jan 28 15:24:29 UTC 2020 Backing up erlang binaries...
mkdir: created directory ‘backup/erlang’
Tue Jan 28 15:24:32 UTC 2020 Extracting erlang components...
Tue Jan 28 15:24:36 UTC 2020 Restoring RabbitMQ database...
Tue Jan 28 15:24:39 UTC 2020 rabbitmq update completed
Tue Jan 28 15:24:40 UTC 2020 vdsmaster server patching completed
Upgrade APM server
To upgrade APM, on the APM server, execute the following command:
$ cd <install_dir>/patches/patch_9.2.4
$ ./patch_9.2.4.sh upgrade_apm
You will see the following output:
Tue Jan 28 15:22:19 UTC 2020 Updating APM server to version: 9.2.4
Tue Jan 28 15:22:19 UTC 2020 Updating Logstash server to version: 6.8.4
Tue Jan 28 15:22:22 UTC 2020 Backing up logstash binaries...
mkdir: created directory ‘backup’
mkdir: created directory ‘backup/logstash’
Tue Jan 28 15:22:25 UTC 2020 Extracting logstash components...
mkdir: created directory ‘temp_logstash’
Tue Jan 28 15:22:33 UTC 2020 Logstash update completed
Tue Jan 28 15:22:33 UTC 2020 Updating MongoDB server to version: 3.6.15
Tue Jan 28 15:22:36 UTC 2020 Backing up MongoDB binaries...
mkdir: created directory ‘backup/mongodb’
mkdir: created directory ‘backup/mongodb/bin’
Tue Jan 28 15:22:39 UTC 2020 Temporarily disabling MongoDB user authentication
Tue Jan 28 15:22:42 UTC 2020 Extracting MongoDB 3.4 binaries...
Tue Jan 28 15:22:48 UTC 2020 Updating MongoDB feature compatibility version to 3.4
mongodb_apm: started
MongoDB shell version v3.4.23
connecting to: mongodb://127.0.0.1:13017/
MongoDB server version: 3.4.23
{ "ok" : 1 }
Update to version 3.4 was successful. Continue updating to version 3.6
mongodb_apm: stopped
Tue Jan 28 15:22:54 UTC 2020 Extracting MongoDB 3.6 binaries...
Tue Jan 28 15:23:00 UTC 2020 Updating MongoDB feature compatibility version to 3.6
Tue Jan 28 15:23:00 UTC 2020 Ensure MongoDB accepts external connections
mongodb_apm: started
MongoDB shell version v3.6.15
connecting to: mongodb://127.0.0.1:13017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("23077c11-0e2a-4cd5-9d48-ceed0c7322d6") }
MongoDB server version: 3.6.15
{ "ok" : 1 }
Tue Jan 28 15:23:05 UTC 2020 Enabling back MongoDB user authentication
mongodb_apm: stopped
Tue Jan 28 15:23:08 UTC 2020 MongoDB update completed
Tue Jan 28 15:23:08 UTC 2020 Backing up apm jar
Tue Jan 28 15:23:11 UTC 2020 Copying new apm jar
Tue Jan 28 15:23:11 UTC 2020 apm jar update completed
Tue Jan 28 15:23:11 UTC 2020 APM server patching completed
Upgrade OCR server
To update OCR, on the OCR server, execute the following command:
$ cd <install_dir>/patches/patch_9.2.4
$ ./patch_9.2.4.sh upgrade_ocr
You will see the following output:
Tue Jan 28 15:25:16 UTC 2020 Updating OCR server to version: 9.2.4
Tue Jan 28 15:25:16 UTC 2020 Backing up ocr jar files
Tue Jan 28 15:25:19 UTC 2020 Copying new ocr jar
Tue Jan 28 15:25:19 UTC 2020 ocr jar update completed
Tue Jan 28 15:25:19 UTC 2020 OCR server patching completed
Upgrade APP server
To upgrade APP, on the APP server, execute the following command:
$ cd <install_dir>/patches/patch_9.2.4
$ ./patch_9.2.4.sh upgrade_ct
You will see the following output:
Thu Feb 13 10:50:06 UTC 2020 Updating Control Tower server to version: 9.2.4
Thu Feb 13 10:50:06 UTC 2020 Backup current Control Tower artifact (workfusion.war)
mkdir: created directory ‘backup’
mkdir: created directory ‘backup/9.2.2’
mkdir: created directory ‘backup/9.2.2/workfusion’
Thu Feb 13 10:50:09 UTC 2020 Removing jar files from context folder
Thu Feb 13 10:50:12 UTC 2020 Updating Control Tower artifact...
Thu Feb 13 10:50:16 UTC 2020 Control Tower update completed
Thu Feb 13 10:50:16 UTC 2020 Backup current RPA manager artifact (rpa_manager.war)
mkdir: created directory ‘backup/9.2.2/rpa_manager’
Thu Feb 13 10:50:19 UTC 2020 Updating RPA manager artifact...
Thu Feb 13 10:50:22 UTC 2020 RPA manager update completed
Thu Feb 13 10:50:22 UTC 2020 Control Tower server patching completed
Upgrade RPA server
Back up the current installation - copy the RPA folder (for example, C:\RPA) to C:\RPA_old.
Uninstall RPA using the respective item from Programs and Features in Control Panel. Reboot the server when requested.
caution
Do not delete C:\RPA folder itself. It still contains valuable configuration files.
Install new version of RPA as described in RPA Windows Server installation.
From the backup folder restore the following files to their corresponding paths:
- File nginx.conf from C:\RPA_old\nginx\conf directory
- All files from the C:\RPA_old\rpa-grid directory except rpa-desktop <version>.jar and directories 'dependency', 'drivers', 'extensions'
- All files from the C:\RPA_old\wfagent\conf directory
- All files from the C:\RPA_old\wfagent\bin directory
Restart the RPA server.
Upgrade RPA server for perfomance issue only.
Stop nodes and hub on RPA server.
Back up the current dependency folder (C:\RPA\rpa-grid\). Rename it (for example, dependecy_backup).
Create a new dependecy folder.
Copy new jars from dependecy_15.zip archive.
You can enable new searching for components in two ways:
- Add param ( -DdesktopOptions.FindByHandle=true ) to start_nodeX.bat for Node (for 9.x).
start_nodeX.bat
%_javaPath%\bin\java -Xms256m -Xmx512m -DdesktopOptions.FindByHandle=true -Dfile.encoding=UTF-8 %_logConfig% -cp %_javaPath%\lib\tools.jar;*;dependency\* org.openqa.grid.selenium.workfusion.grid.SeleniumGridLauncher %_role% %_config%- Add capability to the robot plugin in the bot config.
Bot config
... <robotics-flow> <robot driver="desktop" name="driver1" close-on-completion="true"> <capability name="desktopOptions"> <script return="optionsMap"></script> </capability> <script></script> </robot> </robotics-flow> ...Restart RPA server.
Start workfusion services on all Linux servers
On all Linux servers, DB > VDSmaster > APP > OCR > APM > VDSslave, run the following command as <WF_USER>.
$ wfmanager start all
Post-upgrade steps
You can check a Business Process on the APP server as <WF_USER>:
$ cd /tmp/workfusion-full-package-9.2.2.0-x/
$ ./install.sh check_raw app -e @/tmp/config_overrides.yml -e test_rpa=true -e test_ocr=true -e test_ml=true