Copy FireFlow customizations
AlgoSec FireFlow includes a copy customizations utility that can be used to copy user customizations between sites. This section explains how to use this utility and the elements that are copied.
Copied files
The utility copies the following items:
The utility copies the following database entities:
Queues |
The following information is copied for each queue:
Note: If a queue's name is changed on the original site, the utility will create both a queue with the original name and a queue with the new name on the target site. |
Roles |
The following information is copied for each role:
Note: When updating FireFlow, global permissions, queue permissions, and role permissions that are not in a customization file will be revoked. Note: If a role's name is changed on the original site, the utility will create both a role with the original name and a role with the new name on the target site. Note: Since the utility does not copy users and their role memberships, it will be necessary to define the users as members of the new role on the target site. |
Custom fields |
All custom fields are copied, including those for change requests, users, and roles. The following information is copied for each custom field:
Note: When updating FireFlow, custom fields that do not appear in the customization file will be removed. Furthermore, custom fields referring to queues, system role permissions, or user-defined role permissions that do not appear in the customization file will be removed. Note: If a custom field's name is changed on the original site, the utility will create both a custom field with the original name and a custom field with the new name on the target site. |
|
The following information is copied for each request template:
Note: If a request template's name is changed on the original site, the utility will create both a template with the original name and a template with the new name on the target site. Note: Request templates cannot be disabled; therefore, the utility will not remove them from the target site. |
Email templates |
All email templates are copied, including both global and per queue. The following information is copied for each email template:
Note: Email templates cannot be disabled; therefore, the utility will not remove them from the target site. |
Scripts |
All scripts are copied, including both global and per queue. The following information is copied for each script:
Note: FireFlow scripts have no name; therefore, if two scripts have the same description, only one of them will be updated. |
Saved searches | |
Global Home Page settings |
The utility copies the following configuration files:
Workflows_Config.xml |
The workflow configuration file /usr/share/fireflow/local/etc/site/Workflows_Config.xml The utility overwrites this file on the target site. |
Workflows directory |
All workflow files located under /usr/share/fireflow/local/etc/site/Workflows/ The utility overwrites everything in this folder on the target site. |
SuggestedAddressObjects_Config.xml |
The suggested source/destination addresses list /usr/share/fireflow/local/etc/site/SuggestedAddressObjects_Config.xml The utility overwrites this file on the target site. |
FireFlow_Config.json |
The FireFlow configuration file /usr/share/fireflow/local/etc/site/FireFlow_Config.json The utility adds all parameters in the file that do not include the words Email, Password, Address, or FAUser to the parallel file on the target site, that is, all user and password-related parameters are not copied. Other parameters are updated or added to the end of the file on the target site. The file on the original site is backed up before it is edited. |
The utility copies all translation files located under /usr/share/fireflow/local/etc/site/po.
The utility copies all scripts for uploading change requests from files, located under /usr/share/fireflow/local/etc/site/bin.
The utility copies all hook files and related configuration files located under /usr/share/fireflow/local/Hooks and /usr/share/fireflow/local/etc/site/Hooks.
The utility copies all Web service clients located under /usr/share/fireflow/local/WebServiceClient/. It overwrites everything in this folder on the target site.
Create a customization file to copy
In order to copy customizations from the original site to a target site, you must create a customizations file using the following procedure.
Do the following:
-
On the original site, open a terminal and log in using the username "root" and the related password.
-
Enter the following command:
/usr/share/fireflow/local/sbin/copy_fireflow_customization.pl --run -d -fCustFile [-e]
For more details, see Customization Utility Flags.
A customizations file is created containing the data described in Copied files, and saved to the current directory.
Flag |
Description |
---|---|
-f CustFile |
The name under which to save the customizations file. The default value is user_customizations_yyyy-mm-dd-hhmmss.tar.gz, where yyyy-mm-dd-hhmmss is a timestamp. For example: user_customizations_2010-09-07-091318.tar.gz |
-u |
Update existing elements on the target site with data from the customizations file. If this flag is not used, only new elements will be added. Note: This option is available when -l is used. |
-r |
Database entities that exist in the target customization file but not in the source customization file are set to Disabled. For example, Source customization file has templates A, B, C, D, and the target customization file has templates B, C, D, E. Template E will be disabled. Note: This option is available when -l is used. |
-d | Dump customization to file Note: -d and -l are mutually exclusive. |
-l |
Load customization from file Note: -d and -l are mutually exclusive. |
-e | Do not include disabled roles and disabled custom fields in the customizations file. |
-x | Skip backup |
Load a customizations file to the Target Site
Once you have created a customizations file, you can load it to the target site.
After running copy_fireflow_customization.pl -l to load the customization, the workflow files that were loaded need to enter the VisualFlow internal database, discarding any information that was already there.
Do the following:
-
On the target site, open a terminal and log in using the username "root" and the related password.
Note: The "root" user must have read permissions for the customizations file; otherwise, loading the file will fail.
-
Enter the following command:
/usr/share/fireflow/local/sbin/copy_fireflow_customization.pl --run -l -f CustFile [-u] [-r]
For more details, see Customizations Utility Flags.
The fireflow_backup utility runs and backs up FireFlow to the directory /var/fireflow/backup.
Apache Web service and FireFlow workers both stop.
The customizations file is loaded to the target site. Data is overwritten and/or added as described in Copied files.
Apache Web service restarts.
FireFlow workers start automatically every 5 minutes, as configured on the server’s cron.
-
Refresh the workflows, by doing the following:
- Access VisualFlow. For details, see Get started in VisualFlow.
-
In the VisualFlow main menu, click Apply Workflow Changes.
The Apply Changes page is displayed.
-
To delete all workflow drafts, in the Discard changes to workflows section, click Discard all changes.
A confirmation message appears.
-
Click OK.
-
Click Refresh Workflows.
The workflows are loaded into FireFlow.
Flag |
Description |
---|---|
-f CustFile |
The name of the customizations file to load. Note: The file must be located in the current directory. |
-u |
Update existing elements on the target site with data from the customizations file. If this flag is not used, only new elements will be added. |
-r |
Database entities that exist in the target customization file but not in the source customization file are set to Disabled. |