Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

This process should only be followed to perform a clone of FlexDeploy Production FlexDeploy environment to the Test environment. Make sure that Test environment is restricted for use by very few members of your team to avoid confusion, as the purpose of the Test environment is only for validating FlexDeploy itself and is not used for actual build/deploy activities. You will do some build/deploy activities, but strictly for validation purposes.

The Source and target Target version of FlexDeploy must be same, although you can clone and then upgrade to validate a FlexDeploy Release.

...

  • Export data from Production FlexDeploy database.

    • You should export FD,FF and FD_ADMIN.

  • Take backup of artifact repository folder using tar/zip commands on Production FlexDeploy server. (Optional if you won’t be deploying any old artifacts, they are not needed) For example,

    • cd /flexdeploy/artifacts

    • tar -czvf /app/backup/flexdeploy_artifacts_prod.tar.gz *

  • Take backup of plugins folder using tar/zip commands on Production FlexDeploy server. Plugins folder is under server working directory. You can determine working folder by looking at flexagon.fd.application.root system property on server command line. For example,

    • cd /flexdeploy/application/plugins

    • tar -czvf /app/backup/flexdeploy_plugins.tar.gz *

  • Take backup of vsm folder (InfluxDB)

    • cd /flexdeploy/application/vsm

    • tar -czvf /app/backup/flexdeploy_vsm_prod.tar.gz *

  • Make sure Test FlexDeploy is now stopped for import process.

  • Import data in to target FlexDeploy database. Make sure to run this on Test environment only.

    • Run the following sql command for the appropriate database that will generate many drop table, view and procedure statements as output.  Once this sql is complete, copy all of the output and execute that against the test database.  This method will drop all of the data but maintain table spaces, quotas and passwords for the given schemas.  This will also maintain the same password that is stored in the context.xml file.

      Oracle DB: Drop tables, views and procedures without dropping user

      Code Block
      languagesql
      select 'drop table ' || owner ||'.' || table_name || ' cascade constraints PURGE;' from dba_tables where owner in ('FD','FD_ADMIN','FF')
      union all
      select 'drop view ' || owner || '.' || view_name || ';' from dba_views where owner in ('FD','FD_ADMIN','FF')
      union all
      select 'drop procedure ' || owner || '.' || object_name || ';' from dba_objects where owner in ('FD','FD_ADMIN','FF') and object_type = 'PROCEDURE';

      PostgreSQL DB: Drop tables, views and procedures without dropping user

      Code Block
      select 'drop table ' || table_schema ||'.' || table_name || ' cascade ;' from information_schema.tables where upper(table_schema) in ('FD','FD_ADMIN','FF') and table_type = 'BASE TABLE'
      union all
      select 'drop view ' || table_schema ||'.' || table_name || ' cascade ;' from information_schema.tables where upper(table_schema) in ('FD','FD_ADMIN','FF') and table_type = 'VIEW''
  • Make sure there are no errors in import process. If there are errors, make corrections appropriately and restart import process.

  • At this point, the Test FlexDeploy database should be copy of Production database.

  • Copy artifacts zip file to Test FlexDeploy server and extract it in the artifact repository folder. You can determine Artifact Repository folder by looking at flexagon.fd.repository.root system property on server command line. Make sure to run this on Test environment only.

    • cd /flexdeploy/artifacts

    • tar -czvf /app/backup/flexdeploy_artifacts_test.tar.gz *

    • rm -rf *

    • tar -xzvf /app/backup/flexdeploy_artifacts_prod.tar.gz

  • Now FlexDeploy artifact repository is also copied.

  • Copy plugins tar/zip file to Test FlexDeploy server and extract it in the plugins directory under working directory. You can determine working folder by looking at flexagon.fd.application.root system property on server command line.

    • cd /flexdeploy/application/plugins

    • rm -rf ./*

    • tar -xzvf /app/backup/flexdeploy_plugins.tar.gz

  • Now FlexDeploy plugins are also copied.

...