

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

# AWS CodePipeline 叫用動作參考
<a name="action-reference-PipelineInvoke"></a>

您可以使用 CodePipeline 調用動作來簡化觸發下游管道執行，並在管道之間傳遞管道變數和來源修訂。

**注意**  
只有 V2 類型管道才支援此動作。

**Topics**
+ [動作類型](#action-reference-PipelineInvoke-type)
+ [組態參數](#action-reference-PipelineInvoke-parameters)
+ [Input artifacts (輸入成品)](#action-reference-PipelineInvoke-input)
+ [輸出成品](#action-reference-PipelineInvoke-output)
+ [CodePipeline 調用動作的服務角色政策許可](#action-reference-PipelineInvoke-permissions-action)
+ [動作宣告](#action-reference-PipelineInvoke-example)
+ [另請參閱](#action-reference-PipelineInvoke-links)

## 動作類型
<a name="action-reference-PipelineInvoke-type"></a>
+ 類別：`Invoke`
+ 擁有者：`AWS`
+ 提供者：`CodePipeline`
+ 版本：`1`

## 組態參數
<a name="action-reference-PipelineInvoke-parameters"></a>

**PipelineName**  
必要：是  
將在執行時啟動目前目標管道的管道名稱。您必須已建立叫用管道。當名為 的 `s3-pipeline-test` （叫用） 管道開始執行時，動作將`my-s3-pipeline`啟動 （目標） 管道。

**SourceRevisions**  
必要：否  
您希望目標管道在呼叫管道啟動時使用的來源修訂。例如，S3 來源動作會提供輸出變數，例如 S3 版本 ID 和物件金鑰。您可以指定在叫用管道時要使用的修訂值。  
對於 CLI，您可以將來源修訂指定為序列化 JSON 字串。如需使用來源修訂覆寫的詳細資訊，請參閱 *CodePipeline API 指南*中的 [SourceRevisionOverride](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_SourceRevisionOverride.html)。  
映射使用字串格式，如下列範例所示：  

```
[{"actionName":"Source","revisionType":"S3_OBJECT_VERSION_ID","revision
Value":"zq8mjNEXAMPLE"}]
```

**Variables**  
必要：否  
您希望動作支援的變數名稱和值。  
對於 CLI，您可以將變數指定為序列化 JSON 字串。如需使用管道變數的詳細資訊，請參閱 *CodePipeline API 指南中的 * [PipelineVariable](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PipelineVariable.html)。  
映射使用字串格式，如下列範例所示：  

```
[{"name":"VAR1","value":"VALUE1"}]
```

下圖顯示新增至 主控台中管道的動作範例。

![\[具有 S3 來源的管道和包含管道叫用動作的建置階段\]](http://docs.aws.amazon.com/zh_tw/codepipeline/latest/userguide/images/example-pipeline-invoke-run.png)


下圖顯示 動作的**編輯**頁面範例。在下列範例中，名為 的管道`s3-pipeline-test`具有管道調用動作，如 主控台所示。當名為 的`s3-pipeline-test`管道`my-s3-pipeline`完成執行時，動作將啟動管道。此範例顯示 S3\$1OBJECT\$1VERSION\$1ID 來源覆寫的來源修訂覆寫，其指定修訂值為 `zq8mjNYEexample`。

![\[具有管道調用動作之新管道的編輯動作頁面\]](http://docs.aws.amazon.com/zh_tw/codepipeline/latest/userguide/images/example-pipeline-invoke-edit.png)


## Input artifacts (輸入成品)
<a name="action-reference-PipelineInvoke-input"></a>
+ **成品數量：** `0`
+ **描述：**輸入成品不適用於此動作類型。

## 輸出成品
<a name="action-reference-PipelineInvoke-output"></a>
+ **成品數量：** `0`
+ **描述：**輸出成品不適用於此動作類型。

## CodePipeline 調用動作的服務角色政策許可
<a name="action-reference-PipelineInvoke-permissions-action"></a>

CodePipeline 執行 動作時，CodePipeline 服務角色政策需要 `codepipeline:StartPipelineExecution`許可，適當範圍縮小至管道資源 ARN，以維持最低權限的存取。

```
 {
            "Sid": "StatementForPipelineInvokeAction",
            "Effect": "Allow",
            "Action": "codepipeline:StartPipelineExecution",
            "Resource": [
                "arn:aws:codepipeline:{{region}}:{{AccountId}}:{{pipelineName}}"
            ]
        }
```

## 動作宣告
<a name="action-reference-PipelineInvoke-example"></a>

------
#### [ YAML ]

```
name: Invoke-pipeline
actionTypeId:
  category: Invoke
  owner: AWS
  provider: CodePipeline
  version: '1'
runOrder: 2
configuration:
  PipelineName: my-s3-pipeline
  SourceRevisions: '[{"actionName":"Source","revisionType":"S3_OBJECT_VERSION_ID","revision
Value":"zq8mjNEXAMPLE"}]'
  Variables: '[{"name":"VAR1","value":"VALUE1"}]'
```

------
#### [ JSON ]

```
{
    "name": "Invoke-pipeline",
    "actionTypeId": {
        "category": "Invoke",
        "owner": "AWS",
        "provider": "CodePipeline",
        "version": "1"
    },
    "runOrder": 2,
    "configuration": {
        "PipelineName": "my-s3-pipeline",
        "SourceRevisions": "[{\"actionName\":\"Source\",\"revisionType\":\"S3_OBJECT_VERSION_ID\",\"revisionValue\":\"zq8mjNEXAMPLE"}]",
        "Variables": "[{\"name\":\"VAR1\",\"value\":\"VALUE1\"}]"
    }
},
```

------

## 另請參閱
<a name="action-reference-PipelineInvoke-links"></a>

以下相關資源可協助您使用此動作。
+  [使用來源修訂覆寫啟動管道](pipelines-trigger-source-overrides.md) – 本節說明手動或透過 EventBridge 事件輸入轉換器啟動具有來源修訂的管道。