Panel | |
---|---|
|
...
Software Requirements for Universal Template and Universal Task
Requires Python 3.7.0 or higher. Tested with the Universal Agent bundled Python distribution.
...
When the task instance is canceled on the Controller, a cancel command is issued on the UDMG transfer to attempt a graceful termination.
If the transfer has no children (PUT, GET, LIST action):
Fetch the UDMG transfer status and update the output-only fields.
Proceed to cancel the UDMG transfer only when its status is one of PLANNED, RUNNING, INTERRUPTED, PAUSED, or ERROR.
Update output only fields when the operation is completed.
If the transfer has children (MPUT, MGET action): cancel the execution of all of the eligible child transfers on UDMG ( in status PLANNED, RUNNING, INTERRUPTED, PAUSED, ERROR). Failure on one transfer does not block the execution for the other transfers.
Re-Run
When the task instance is re-run on the Controller, a resume command is issued on the UDMG transfer for the file transfers in status ERROR.
If the transfer has no children (PUT, GET, LIST action):
Fetch the UDMG transfer status and update the output-only fields.
Proceed to resume the UDMG transfer only when its status is ERROR, otherwise
Continute the monitoring until the UDMG transfer is completed.
If the transfer has children (MPUT, MGET action): resume the execution of all of the eligible child transfers on UDMG (in status ERROR). Failure on one transfer does not block the execution for the other transfers.
Task Output
Output Only Fields
...
Field | Type | Description |
---|---|---|
Transfer ID | Text | The identifier of the transfer on UDMG |
Transfer Status | Text | The current status of the transfer Used for Task instance Extension Status. |
Transfer Start Time | Text | The date and time the transfer has started (UDMG Server time) |
Transfer End Time | Text | The date and time the transfer has ended (UDMG Server time) For a wildcard transfer, this is when the listing of matching files and the registration of the child transfers is completed. |
Transfer Step | Text | The current processing step of the transfer One of NONE, PRE TASKS, DATA, POST TASKS, ERROR TASKS or FINALIZATION |
Transfer Progress Modified in version 1.2.0 | Text | The progress of the data transfer in human readable format
|
Error Code | Text | The UDMG transfer error code. See the table below. |
Error Message | Text | The error message (if an error occurred) |
Transfer Task Number | Text | The number of the task in the processing step. Only for the Transfer Steps 'PRE TASKS', 'POST TASKS', and 'ERROR TASKS' |
Local File | Text | Local file path |
Remote File | Text | Remote file path |
Transfer UUID Introduced in version 1.1.0 | Text | The UUID of the transfer on UDMG |
...
Error Code | Description |
---|---|
TeOk | This is the code used by default. It indicates that there is no error |
TeUnknown | Indicates an unknown error (the details of the error can give more information). |
TeInternal | Indicates that an internal error occurred in the UDMG Server (lost connection to the database, etc.) |
TeUnimplemented | Indicates that the partner wanted to use a valid functionality, but which is not implemented by the UDMG Server. |
TeConnection | Indicates that the connection to a remote partner cannot be established. This is the most general error code. A more specific code, if available, should be used. |
TeConnectionReset | Means "connection reset by peer" |
TeUnknownRemote | Indicates that the requested remote partner is not known in the UDMG Server database. For security reasons, the external use of this error code (returning this error to a client) is discouraged for incoming connections in favor of TeBadAuthentication, at the risk of leaking information (here, the account exists, but authentication failed). |
TeExceededLimit | Indicates that the transfer cannot be processed because the defined limits have been reached (number of connections, number of transfers, etc.) |
TeBadAuthentication | Indicates a connection error caused by incorrect authentication data (user, password, certificate, etc. Details of the error can provide more information). |
TeDataTransfer | Indicates that an error occurred during data transfer. This is a general error and a more specific code, if available, should be used. |
TeIntegrity | Indicates that the integrity check has failed. |
TeFinalization | Indicates that an error occurred during the finalization of the transfer. |
TeExternalOperation | Indicates that an error occurred during the execution of pre-transfer, post-transfer, or error processing. |
TeStopped | Indicates that the transfer was stopped. |
TeCanceledTeCancelled | Indicates that the transfer was cancelled. |
TeFileNotFound | Indicates that the requested file was not found. |
TeForbidden | Indicates that the remote partner is not allowed to perform an action. |
TeBadSize | Indicates an error related to the size of the file (it exceeds a quota, there is not enough space left on the destination disk, etc.) |
TeShuttingDown | Indicates that the UDMG Server is shutting down |
...
Exit Code | Status Classification Code | Status Classification Description | Status Description |
---|---|---|---|
0 | SUCCESS | Successful Execution | SUCCESS |
1 | FAIL | Failed Execution | FAIL: < Error Description > |
2 | AUTHENTICATION_ERROR | Bad credentials | AUTHENTICATION_ERROR: Account cannot be authenticated. |
3 | AUTHORIZATION_ERROR | Insufficient Permissions | AUTHORIZATION_ERROR: Account is not authorized to perform the requested action. |
10 | CONNECTION_ERROR | Bad connection data or connection timed out | CONNECTION_ERROR: < Error Description > |
11 | CONNECTION_ERROR | Extension specific connection error | CONNECTION_ERROR: 404 page not found |
20 | DATA_VALIDATION_ERROR | Input fields Validation Error | DATA_VALIDATION_ERROR: 400 bad request: |
21 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeUnknown |
22 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeInternal |
23 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeUnimplemented |
24 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeConnection |
25 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeConnectionReset |
26 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeUnknownRemote |
27 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeExceededLimit |
28 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeBadAuthentication |
29 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeDataTransfer |
30 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeIntegrity |
31 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeFinalization |
32 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeExternalOperation |
33 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeWarning |
34 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeStopped |
35 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeCanceledTeCancelled |
36 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeFileNotFound |
37 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeForbidden |
38 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeBadSize |
39 | TRANSFER_STATUS_ERROR | Transfer Execution Error | TRANSFER_STATUS_ERROR: Transfer failed with error code: TeShuttingDown |
99 | CHILD_TRANSFERS_NOT_MONITORED_WARNING | API Limitations | CHILD_TRANSFERS_NOT_MONITORED_WARNING: Too many child transfers, skipped monitoring their completions status |
100 | TRANSFER_STATUS_CANCEL | Unexpected Transfer Status | TRANSFER_STATUS_CANCEL: Unexpected CANCELLED status |
...
Attribute | Type | Description |
---|---|---|
mft_transfer | object | The details of the main transfer record (the single transfer or the parent transfer in case of Wildcard Transfer). |
mft_transfer.transfer_id | string | The identifier of the transfer on UDMG. |
mft_transfer.status | string | The current status of the transfer One of PLANNED, RUNNING, PAUSED, INTERRUPTED, DONE, CANCELLLED or ERROR. |
mft_transfer.start | string | The date and time the transfer has started (UDMG Server time) |
mft_transfer.stop | string | The date and time the transfer has ended (UDMG Server time). For a wildcard transfer, this is when the listing of matching files and the registration of the child transfers is completed. |
mft_transfer.step | string | The current processing step of the transfer One of NONE, PRE TASKS, DATA, POST TASKS, ERROR TASKS or FINALIZATION. |
mft_transfer.transfer_progress | text | The progress of the data transfer in human readable format
|
mft_transfer.error_code | string | The error code of the transfer (if an error occurred). |
mft_transfer.error_msg | string | The error message (if an error occurred). |
mft_transfer.task_number | string | The number of the task in the processing step. Only for the steps 'PRE TASKS', 'POST TASKS', and 'ERROR TASKS'. |
mft_transfer.local_file | string | Local file path. |
mft_transfer.remote_file | string | Remote file path. |
mft_transfer.transfer_uuid Introduced in version 1.1.0 | string | The UUID of the transfer on UDMG. |
mft_transfer.transfer_info Introduced in version 1.1.0 | object | The transfer information fields. Set of metadata associated to the transfer on UDMG Server. The fields with udmg_ prefix are set internally by UDMG server. The fields with udmg_ue prefix are set by the UDMG File Transfer task. |
mft_transfer.transfer_info.udmg_ue_task_uuid Introduced in version 1.2.0 | string | The UUID of the UDMG File Transfer task. It can be used to easily correlate the UC task executions and the corresponding UDMG file transfers. |
mft_transfer.transfer_info.udmg_xfer_wildcard Introduced in version 1.2.0 | boolean | Indicator that this is a wildcard transfer. Only for MPUT and MGET. |
mft_transfer.transfer_info.udmg_xfer_cmd Introduced in version 1.3.0 | string | ' Only for LIST. |
mft_transfer.transfer_info.udmg_xfer_childIDs Introduced in version 1.2.0 | array | A list of UDMG transfer IDs that are created in the context of this file file transfer. For each file matched the filename input, one file transfer process is created in UDMG. Only for MPUT and MGET. |
mft_transfer.transfer_info.udmg_xfer_files Introduced in version 1.2.0 | array | The list of files that matched the user input. Each of these files is transferred with a separate file transfer execution, which transfer ids can be found in “udmg_xfer_childIDs“ list. Only for MPUT and MGET. |
mft_transfer_files_summary Introduced in version 1.2.0 | object | Summary counters |
mft_transfer_files_summary.done | number | Number of file transfers with success. |
mft_transfer_files_summary.error | number | Number of file transfers in error state. |
mft_transfer_files_summary.cancelled | number | Number of file transfers that are cancelled. |
errors Introduced in version 1.2.0 | array | List of errors for the child transfers. |
...
Field | Description |
---|---|
id | The identifier of the transfer on UDMG |
status | The current status of the transfer |
localFilepath | The path of the file on the local disk |
start | The date and time the transfer has started (UDMG Server time) |
stop | The date and time the transfer has ended (UDMG Server time) |
filesize | The size of file in byte (or -1 when unknown) |
progress | The progress of the data transfer in bytes |
remoteID | The UUID of the transfer on UDMG |
errorCode | The UDMG transfer error code. |
errorMessage | The error message (if an error occurred) |
step | The current processing step of the transfer One of NONE, PRE TASKS, DATA, POST TASKS, ERROR TASKS or FINALIZATION |
taskNumber | The number of the task in the processing step. Only for the Transfer Steps 'PRE TASKS', 'POST TASKS', and 'ERROR TASKS' |
remoteFilepath | The path to the file on the remote partner |
rule | The name of the transfer rule |
isSend | Indicates whether the transfer is a send (true) or a receive (false) |
requested | The name of the server/partner that requested the transfer |
requester | The name of the account that requested the transfer |
...
Breaking Change
: Transfer Progress output only field is changed to text value (#32195)
Enhancements
Add
: Support Wildcard Transfer (#32198, #32195, #32201)- New actions "MPUT" and "MGET" for wildcard transfers:
- support for wildcard in source file parameter,
- creation of wildcard transfer on UDMG,
- monitoring of child transfers on UDMG,
- tabular report on STDOUT with final child transfer status,
- short summary report in EXTENSION output,
- PAUSE, RESUME, and CANCEL commands are propagated to child transfers
- "Transfer Progress" output field is redefined to show human readable value
- size in KB, MB, or GB for single transfer,
- "x out of y files" for wildcard transfer
- "Max files to monitor" parameter: limit the number of child transfers that are monitored by the task instances, 100 by default.
- "Wait for transfer completion" parameter: task instance only returns when the transfer is completed (with DONE or CANCELLED status) on UDMG.
For wildcard transfers, only returns when all child transfers are completed. Activated by default.
- New actions "MPUT" and "MGET" for wildcard transfers:
Add
: Refresh task instance output with re-run (#32463)Add
: Keep UC task instance ID in UDMG file transfer metadata field udmg_ue_task_uuid (#30931)
ue-mft-transfer-1.1.0 (2023-01-31)
...