

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 建立工作流程
<a name="create-workflow"></a>

您可以使用 建立受管工作流程 AWS 管理主控台，如本主題所述。為了讓工作流程建立程序盡可能簡單，主控台中的大多數區段都可以使用情境說明面板。

工作流程有兩種步驟：
+ **名義步驟** – 名義步驟是您想要套用至傳入檔案的檔案處理步驟。如果您選擇多個名目步驟，則每個步驟都會以線性順序處理。
+ **例外狀況處理步驟** – 例外狀況處理常式是在任何名目步驟失敗或導致驗證錯誤時 AWS Transfer Family 執行的檔案處理步驟。

**建立工作流程**

1. 在 https：//[https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) 開啟 AWS Transfer Family 主控台。

1. 在左側導覽窗格中，選擇**工作流程**。

1. 在**工作流程**頁面上，選擇**建立工作流程**。

1. 在**建立工作流程**頁面上，輸入描述。此描述會出現在**工作流程**頁面上。

1. 在**名義步驟**區段中，選擇**新增步驟**。新增一或多個步驟。

   1. 從可用的選項中選擇步驟類型。如需各種步驟類型的詳細資訊，請參閱 [使用預先定義的步驟](nominal-steps-workflow.md)。

   1. 選擇**下一步**，然後設定步驟的參數。

   1. 選擇**下一步**，然後檢閱步驟的詳細資訊。

   1. 選擇**建立步驟**以新增步驟並繼續。

   1. 視需要繼續新增步驟。工作流程中的步驟數目上限為 8。

   1. 新增所有必要的名目步驟後，向下捲動至**例外處理常式 – *選用***區段，然後選擇**新增步驟**。
**注意**  
為了讓您即時收到失敗的通知，建議您設定例外狀況處理常式，以及在工作流程失敗時執行的步驟。

1. 若要設定例外狀況處理常式，請以先前所述的相同方式新增步驟。如果檔案導致任何步驟擲回例外狀況，則會逐一叫用例外狀況處理常式。

1. （選用） 向下捲動至**標籤**區段，並為您的工作流程新增標籤。

1. 檢閱組態，然後選擇**建立工作流程**。
**重要**  
建立工作流程之後，您無法編輯它，因此請務必仔細檢閱組態。

## 設定和執行工作流程
<a name="configure-workflow"></a>

您必須先將工作流程與 Transfer Family 伺服器建立關聯，才能執行工作流程。

**設定 Transfer Family 在上傳的檔案上執行工作流程**

1. 在 https：//[https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) 開啟 AWS Transfer Family 主控台。

1. 在左側導覽窗格中，選擇**伺服器**。
   + 若要將工作流程新增至現有伺服器，請選擇您要用於工作流程的伺服器。
   + 或者，建立新的伺服器，並將工作流程新增至其中。如需詳細資訊，請參閱[設定 SFTP、FTPS 或 FTP 伺服器端點](tf-server-endpoint.md)。

1. 在伺服器的詳細資訊頁面上，向下捲動至**其他詳細資訊**區段，然後選擇**編輯**。
**注意**  
 根據預設，伺服器沒有任何相關聯的工作流程。您可以使用**其他詳細資訊**區段，將工作流程與所選伺服器建立關聯。

1. 在**編輯其他詳細資訊**頁面的**受管工作流程**區段中，選取要在所有上傳上執行的工作流程。
**注意**  
如果您還沒有工作流程，請選擇**建立新工作流程**來建立工作流程。

   1. 選擇要使用的工作流程 ID。

   1. 選擇執行角色。這是 Transfer Family 在執行工作流程步驟時擔任的角色。如需詳細資訊，請參閱[工作流程的 IAM 政策](workflow-execution-role.md)。選擇 **Save** (儲存)。  
![\[受管工作流程畫面，顯示工作流程和執行角色的值。\]](http://docs.aws.amazon.com/zh_tw/transfer/latest/userguide/images/workflows-addtoserver.png)

**注意**  
如果您不再希望工作流程與伺服器建立關聯，您可以移除關聯。如需詳細資訊，請參閱[從 Transfer Family 伺服器移除工作流程](transfer-workflows.md#remove-workflow-association)。

**執行工作流程**

若要執行工作流程，您可以將檔案上傳到使用相關聯工作流程設定的 Transfer Family 伺服器。

**注意**  
每當您從伺服器移除工作流程並將其取代為新的工作流程，或更新伺服器組態 （這會影響工作流程的執行角色） 時，您必須等待大約 10 分鐘，才能執行新的工作流程。Transfer Family 伺服器會快取工作流程詳細資訊，伺服器重新整理其快取需要 10 分鐘。  
此外，您必須登出任何作用中的 SFTP 工作階段，然後在 10 分鐘的等待期間之後重新登入，以查看變更。

**Example**  

```
# Execute a workflow
> sftp bob@s-1234567890abcdef0.server.transfer.us-east-1.amazonaws.com

Connected to s-1234567890abcdef0.server.transfer.us-east-1.amazonaws.com.
sftp> put doc1.pdf
Uploading doc1.pdf to /amzn-s3-demo-bucket/home/users/bob/doc1.pdf
doc1.pdf                                                                    100% 5013KB 601.0KB/s   00:08    
sftp> exit
>
```

上傳檔案後，定義的動作會在您的檔案上執行。例如，如果您的工作流程包含複製步驟，檔案會複製到您在該步驟中定義的位置。您可以使用 Amazon CloudWatch Logs 來追蹤執行的步驟及其執行狀態。

## 檢視工作流程詳細資訊
<a name="view-details-workflow"></a>

您可以檢視先前建立的工作流程或工作流程執行的詳細資訊。若要檢視這些詳細資訊，您可以使用 主控台或 AWS Command Line Interface (AWS CLI)。

------
#### [ Console ]

**檢視工作流程詳細資訊**

1. 在 https：//[https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) 開啟 AWS Transfer Family 主控台。

1. 在左側導覽窗格中，選擇**工作流程**。

1. 在**工作流程**頁面上，選擇工作流程。

   工作流程詳細資訊頁面隨即開啟。  
![\[Transfer Family 工作流程的工作流程詳細資訊畫面，顯示描述、步驟、例外狀況處理常式和傳輸中執行。\]](http://docs.aws.amazon.com/zh_tw/transfer/latest/userguide/images/workflows-overview.png)

------
#### [ CLI ]

若要檢視工作流程詳細資訊，請使用 `describe-workflow` CLI 命令，如下列範例所示。將工作流程 ID 取代`w-1234567890abcdef0`為您自己的值。如需詳細資訊，請參閱《 *AWS CLI 命令參考*》中的 [ describe-workflow](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/transfer/describe-workflow.html)。

```
# View Workflow details
> aws transfer describe-workflow --workflow-id w-1234567890abcdef0
{
    "Workflow": {
        "Arn": "arn:aws:transfer:us-east-1:111122223333:workflow/w-1234567890abcdef0",
        "WorkflowId": "w-1234567890abcdef0",
        "Name": "Copy file to shared_files",
        "Steps": [
            {
                "Type": "COPY",
                "CopyStepDetails": {
                "Name": "Copy to shared",
                "FileLocation": {
                    "S3FileLocation": {
                        "Bucket": "amzn-s3-demo-bucket",
                        "Key": "home/shared_files/"
                    }
                }
                }
            }
        ],
        "OnException": {}
    }
}
```

------

如果您的工作流程是建立為 AWS CloudFormation 堆疊的一部分，您可以使用 CloudFormation 主控台 ([https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/)：//) 來管理工作流程。

![\[屬於 堆疊之 AWS CloudFormation 工作流程的工作流程詳細資訊畫面，顯示您在 CloudFormation 中管理此工作流程的訊息。\]](http://docs.aws.amazon.com/zh_tw/transfer/latest/userguide/images/workflows-cloudformation-link.png)
