This page provides instructions for upgrading a FlexDeploy installation from version 5.4 and later. You will continue to run Tomcat 9.0.34.

Make sure you have downloaded new version of FlexDeploy and unzipped it, so it can be accessed during upgrade process.

Upgrade Instructions

Step 1. Stop the Tomcat server. Use shutdown.sh on Linux and shutdown.bat on Windows.


Step 2. Backup the FlexDeploy schemas and Artifact Repository. In case you need to back out FlexDeploy, you can use these backup data.

For back-out purposes, it is highly recommended that a database backup of the database be taken using standard tools like RMAN for Oracle. Another option would be to export the FD, FD_ADMIN, and FF schemas using data pump. The schemas can be exported using the following data pump command for Oracle as shown below. Follow standard procedures for PostgreSQL and MySQL for database backup.

You will need to setup environment variables before running expdp. For example,

export ORACLE_HOME=/u01/app/oracle/product/
12.1.0/dbhome_1
export ORACLE_SID=fd01

export statements above are for example only as values will be different for your installation.

expdp system directory=DATA_PUMP_DIR dumpfile=fd_bkup.dmp schemas=FD,FF,FD_ADMIN

If this database is exclusively used for just FlexDeploy application, you can rely on Database backup and recovery processes (RMAN)
instead of export data procedure.

It is recommended that a backup of the artifact repository file system be taken in case a back-out is required. The location of the artifact repository can be identified by looking at value of -Dflexagon.fd.repository.root in setenv.sh or setenv.bat file. This file will be in <FlexDeploy Home>/apache-tomcat-flexdeploy/bin/. Standard file backup procedures can be followed. Optionally, the following command (unix only) can be used to create a tar file backup of the entire directory.

cd <artifact repository location>
tar –cvzf artifact.tar.gz <artifact repository location>

Step 3. Upgrade the FlexDeploy schemas


Step 4. From the FlexDeploy Tomcat distribution, copy /apache-tomcat-flexdeploy/webapps/flexdeploy.war into <FlexDeploy Home>/apache-tomcat-flexdeploy/webapps (overwrite existing file). If you want to take backup of existing file, please copy it outside of FlexDeploy installation folder to avoid confusion later. If you keep copy of older war in webapps folder, then two applications will start and cause issues as well.


Step 5. Review <FlexDeploy Home>/apache-tomcat-flexdeploy/conf/context.xml changes as per FlexDeploy Release Notes - See Platform Recommendations. Alternatively, you can compare your context.xml file with FlexDeploy Tomcat distribution (/apache-tomcat-flexdeploy/conf/context.xml) and make changes as necessary.

If using Oracle database, it is recommended to use UCP connection pool (see details below). If you are already setup for UCP or using other database go to next step.

<Resource name="jdbc/flexdbDS" auth="Container"
    type="oracle.ucp.jdbc.PoolDataSource"
    factory="oracle.ucp.jdbc.PoolDataSourceImpl"

    connectionFactoryClassName="oracle.jdbc.pool.OracleDataSource"
    minPoolSize="0"
    maxPoolSize="100"
    initialPoolSize="0"
    autoCommit="false"
    inactiveConnectionTimeout="300"

    url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=**HOSTNAME**)(PORT=**PORT**)))(CONNECT_DATA=(SERVICE_NAME=**SERVICE_NAME**)))"
    user="fd_admin"
    password="**FD_ADMIN_PASSWORD**"

    fastConnectionFailoverEnabled="true"

    validationQuery="select 1 from dual"
    testOnBorrow="true"

    useLocalSessionState="true"
    defaultAutoCommit="false"/>
url="jdbc:oracle:thin:@(DESCRIPTION = CONNECT_TIMEOUT=120) (RETRY_COUNT=20) (RETRY_DELAY=3) (TRANSPORT_CONNECT_TIMEOUT=3) (ADDRESS_LIST =(LOAD_BALANCE=on) (ADDRESS = (PROTOCOL = TCP) (HOST=primary-scan) (PORT=1521))) (ADDRESS_LIST =(LOAD_BALANCE=on) (ADDRESS = (PROTOCOL = TCP) (HOST=secondary-scan) (PORT=1521))) (CONNECT_DATA=(SERVICE_NAME = gold-cloud)))"

Step 6. From the FlexDeploy Tomcat distribution, copy /apache-tomcat-flexdeploy/lib/FlexDeployAPI.jar into <FlexDeploy Home>/apache-tomcat-flexdeploy/lib (overwrite existing file if present). If you want to take backup of existing file, please copy it outside of FlexDeploy installation folder to avoid confusion later


Step 7. Copy plugins from download zip for auto upload.


Step 8 . Start tomcat by running the following script

<FlexDeploy Home>/apache-tomcat-flexdeploy/bin/startup.sh (startup.bat on Windows)


Step 9. Launch FlexDeploy in your browser - http://<hostname>:<port>/flexdeploy


Step 10. There is no need to activate plugins manually. FlexDeploy will automatically upload and activate new versions of plugins once they are copied to plugins folder. You will notice that plugins that you copied in Step 8 will eventually be uploaded automatically and folder will not have any jar files left. You can also look at Administration - Plugins in UI and see newer versions of plugins.