Migrate tasks and Business Processes
You can create a package with a Business Process (BP) or a task and import it from one WorkFusion environment to another, for example, from DEV to UAT or PROD. Let’s assume the source is a DEV environment and the destination is a UAT environment.
A package is a ZIP archive that contains the following:
- An XML file with a task or BP export information, such as design, settings
- All Data Stores used in task or BP steps
- Meta information
To view, import, and export packages, you must have the Advanced Package Import and Export/import permissions. For details, refer to Manage Control Tower roles and permissions.
Migration during upgrades
Work.AI executes multiple Business Processes (BPs) created by third parties. When upgrading from one Work.AI version to another, it is important to make sure all BPs are still working.
Parts of BPs are migrated automatically by the WorkFusion's embedded tooling. However, in the instances where it's not possible to do it automatically, refer to the applicable migration guide for your Work.AI version.
Make sure you reviewed and applied notes for all Work.AI versions between the source and target versions. Deprecation notes (if there any) should also be taken into account. For more details, see the Release notes section.
Configure Bot Config Bundle
Skip this step if no BCB is used for the BP.
Bot Config Bundle (BCB) configuration—the source code located in a Java project—should be deployed to GIT/SVN. For deployment, follow the steps below:
Use the Maven command to deploy the latest code to the DEV environment:
mvn clean package deployUpdate BCB from Control Tower: Advanced > Bot Configurations > Import from Repository.

Apply AutoML Operation
Skip the step if no automation is applied to Manual Tasks (MT).
If automation is applied to MTs, apply an AutoML Automation Operation to an existing BP.
If the latest version of the BP contains an AutoML Operation, perform the following steps:
- Create a BP copy with a new name and version.
- Replace all AutoML Operations with appropriate Manual Tasks.
- Save the BP without any AutoML Operations inside.
If any MT contains AutoML settings, automation can be applied on the destination environment to the already imported BP.
Create custom AutoML Operation
If an AutoML Operation is a custom one and you made changes in the source environment, do as follows:
Create a BP using an AutoML Operation template from the Cognitive Bot Use Cases category.

In the BP, navigate to the Workflow tab.
Drag the original MT from the right-hand panel to replace the empty task with it.
Save the BP. There should be no validation errors.
Prepare the package for export to the destination environment.
Import the package to the destination environment.
Open the imported BP and select the Workflow diagram.
Replace the MT inside it with an empty MT.

Save the BP.
Create a new Auto ML Operation from System Settings > Operations > the Business Process tab.

To avoid conflicts during import or export, set a new version and name for the source BP.
Copy ML artifacts
If the BP has a Machine Learning (ML) model linked to the MT, migrate a binary model and a pre-trained model. For more details, see Migrate AutoML models.
Migration is required for each model linked to the MT.
Create package
To create a package, follow the steps below:
Go to Business Processes (or Manual Tasks) > View All. Select a BP and navigate to the Packages tab.
Click the New Package button.

Enter a meaningful Name and Description for the package.

Choose Data Stores to include in the package by ticking appropriate checkboxes. The list contains all Data Stores used in the BP's Manual or Bot Tasks. You can uncheck a Data Store if you are sure that the target WorkFusion environment contains one with the same name and appropriate data.
(Optional) Select the version in the Target Version drop-down box for the current package. The feature helps to move processes from instances with an older WorkFusion version to new instances and vice versa.
cautionMind that you cannot migrate 10.x BP packages to 9.x versions.
Click Save.
Download package
To download a package to your local machine, go to the Actions grid column and click the Download button.

As a result, the package is downloaded as a ZIP file.
You can delete a package if it is not needed anymore. For that, click the arrow icon near the Download button and select Delete.
Import package
It is strongly recommended not to update or import the same Business Process during the execution of its instances as it can cause undesired effects or warnings.
To import a package, follow the steps below:
Log in to the target WorkFusion environment, for example, PROD or UAT.
Go to Business Processes (Manual Tasks), open the drop-down menu next to the Create New button, and choose Import Package.

Upload the package ZIP archive downloaded from the source environment and click the Preview Package button.

In the Package Import window, resolve all conflicts if needed.

You can see the following warnings:
"\<N> business processes of version \<date> are active": you need to decide whether you want to overwrite active processes or not. You can optionally pause or stop active processes.
"The package was exported from WF version \<XXX>. This environment has WF version (YYY)": the import can potentially cause some issues. You should check its results in the generated log file.
Resolve AutoML conflicts
If the Machine Learning model with the same name, model version, and trained model id included in the imported package is not available on your production environment, you get one of the following errors.


The "Trained model ID is not available" error message is displayed only if the model version is correct.
You have to acknowledge that AutoML configuration will not be set to import your package.

If you are importing the same package more than once, create another version or overwrite a particular version of this task (BP). When overwriting an existing BP version, you can have a diff view for the process structure and each process step. This function can help make a decision on whether to rewrite the BP or not.

After you apply the overwrite feature during import, the following changes are made:
- Completed tasks and BPs have an old version.
- Draft tasks and BPs have a new version.
- Processing tasks and BPs without significant changes (steps added, deleted, or substituted with other steps) have a new version.
- Schedules are switched to a new version.
If the imported and existing process versions have significant differences (steps added, deleted, or substituted with other steps), you need a special Advanced Package Import permission to make such potentially dangerous overwrite. See the Manage Control Tower roles and permissions topic.
Expand to learn more
This import type can be required when you need to update active process runs, avoid schedule recreation, or reuse already configured <start-task> plugins (by UUID).
When you import a package with a modified process structure, the following notifications are shown:
- Amount of added or removed process steps and rules
- Amount of active process runs

When you overwrite an active process run, its result data can be inconsistent because of added, removed, or changed steps and rules.
If your package contains Data Stores or included Bot Configs, you can get the following Resolve Import Conflict section(s).

In this case, proceed as described below:
Choose one of the options (replace, keep, or rename) for each conflict section.
- Data Stores are compared by the structure and number of records.
- For included Bot Configs, you can toggle a diff view.
When all import conflicts are resolved, click the Import Package button in the bottom left corner.
If the package is successfully imported, you see the import result message.

- You can download a detailed import report by clicking the View import log file link. This log can be useful in case some issues are found after import.
- When a package is imported, the platform checks its structure and displays useful notes and action items to be completed before running the imported task or BP (for example, Define global variables).
View the imported BP (task) or navigate elsewhere using the main menu.
The imported BP or task creates a run in a Draft state.
When a new task version is imported to a target WorkFusion environment, the Automation settings and Workforce parameters are copied from the previous version that already exists in this environment.
Apply ML model
If a BP is copied with an AutoML Operation and a model, follow the steps to apply AutoML settings as described in Retrain IE Cognitive Bot ML model.
Import BCB project
If a source BP is developed using a BCB project, deploy and import it as described in the Configure Bot Config Bundle section.
Create a new BP copy with the same name to update all BCB Configs if the BCB is used for the BP.
The Bot Configs from the BCB used as steps in the BP are not replaced by import. Instead, they are skipped, and the warning is added in the audit log for the BP import: "WARNING: Machine config from BCB with inclusion code '%s' and name '%s' already exist, it will not be rewritten".
For the Bot Configs from the BCB used as included configs, the import shows three options to resolve:
- Replace: the content of the included config is to be replaced with that from the imported package.
- Skip: the content of the included config is to be skipped.
- Rename: not recommended; creates a new Bot Config with the specified name and autogenerated inclusion code, but it is not used in any BP after import.
Manually created Bot Configs are replaced as before.
Check version labels
Let's assume that you have a BP and did the following:
- Created the first package for the BP and imported the package to the PROD environment.
- Edited the BP and saved it
- Created the second package for the BP and imported the package to the PROD environment
As a result, each newly imported package creates a BP or task run that is automatically labeled by a timestamp.
The following task and BP settings are NOT included in a package:
- Workforce for each MT. During import, the settings are taken from the target instance defaults.
- Global variable values. During import, respective columns are created in the Global Variables Data Store, but with empty values.
- Custom attributes.
- Priority.
- Permanent open tasks.