

這是 AWS CDK v2 開發人員指南。較舊的 CDK v1 已於 2022 年 6 月 1 日進入維護，並於 2023 年 6 月 1 日結束支援。

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

# 使用 CDK Toolkit Library 執行程式設計動作
<a name="toolkit-library"></a>

## 了解 CDK Toolkit Library
<a name="toolkit-library-intro"></a>

CDK Toolkit Library 可讓您透過程式碼以程式設計方式執行 CDK 動作，而不是使用 CLI 命令。您可以使用此程式庫來建立自訂工具、建置專門的 CLI 應用程式，並將 CDK 功能整合到您的開發工作流程中。

 **使用程式設計控制管理您的基礎設施生命週期**   
CDK Toolkit Library 為下列 CDK 動作提供程式設計界面：  
+  **合成** - Generate AWS CloudFormation 範本和部署成品。
+  **部署** - 使用 CloudFormation 範本佈建或更新基礎設施。
+  重**構** - 在重構 CDK 程式碼時保留已部署的資源，例如重新命名建構或在堆疊之間移動。
+  **清單** - 檢視堆疊及其相依性的相關資訊。
+  **觀看** - 監控 CDK 應用程式是否有本機變更。
+  **轉返** - 將堆疊傳回至其上次穩定狀態。
+  **銷毀** - 移除 CDK 堆疊和相關聯的資源。

 **增強和自訂您的基礎設施管理**   
+  **透過程式碼控制** - 將基礎設施管理直接整合至您的應用程式，並建置回應式部署管道。
+  **管理雲端組件** - 在部署之前建立、檢查和轉換您的基礎設施定義。
+  **自訂部署** - 設定參數、回復行為和監控以符合您的需求。
+  **在重構期間保留資源** - 在重構 CDK 程式碼時自動偵測和保留資源。
+  **精確處理錯誤** - 使用詳細的診斷資訊實作結構化錯誤處理。
+  **量身打造的通訊** - 設定自訂進度指標，並透過`IoHost`實作記錄。
+  **與 AWS 連線 ** - 以程式設計方式設定設定檔、區域和身分驗證流程。

## 選擇何時使用 CDK Toolkit Library
<a name="toolkit-library-intro-when"></a>

當您需要：
+ 自動化基礎設施部署做為 CI/CD 管道的一部分。
+ 建置根據您的組織需求量身打造的自訂部署工具。
+ 將 CDK 動作整合到現有的應用程式或平台。
+ 使用自訂驗證或核准步驟建立專門的部署工作流程。
+ 跨多個環境實作進階基礎設施管理模式。
+ 自動化重構操作，以便在重構 CDK 程式碼時保留資源。

## 使用 CDK Toolkit Library
<a name="toolkit-library-intro-example"></a>

下列範例示範如何使用 CDK Toolkit Library 建立和部署簡單的 S3 儲存貯體：

```
// Import required packages
import { Toolkit } from '@aws-cdk/toolkit-lib';
import { App, Stack } from 'aws-cdk-lib';
import * as s3 from 'aws-cdk-lib/aws-s3';

// Create and configure the CDK Toolkit
const toolkit = new Toolkit();

// Create a cloud assembly source with an inline app
const cloudAssemblySource = await toolkit.fromAssemblyBuilder(async () => {
   const app = new App();
   const stack = new Stack(app, 'SimpleStorageStack');

   // Create an S3 bucket in the stack
   new s3.Bucket(stack, 'MyFirstBucket', {
      versioned: true
   });

   return app.synth();
});

// Deploy the stack
await toolkit.deploy(cloudAssemblySource);
```

 **接下來您可以做什麼**   
+  **自動化部署** - 以程式設計方式觸發部署，並新增部署前/後步驟。
+  **與系統整合** - 與 CI/CD 工作流程、自訂工具和監控解決方案連線。
+  **控制部署詳細資訊** - 設定堆疊選取和多環境部署的精細選項。
+  **增強可靠性** - 實作生產就緒的錯誤處理和部署進度追蹤。
+  **自動化重構** - 重構 CDK 程式碼時偵測並保留資源。

## 後續步驟
<a name="toolkit-library-intro-next"></a>

若要開始使用 CDK Toolkit Library，請參閱 [CDK Toolkit Library 入門](toolkit-library-gs.md)。

## 進一步了解
<a name="toolkit-library-intro-learn"></a>

若要進一步了解 CDK Toolkit Library，請參閱以下內容：
+  *@aws-cdk/toolkit-lib* `npm`套件中的 [ReadMe](https://www.npmjs.com/package/@aws-cdk/toolkit-lib)。
+  [AWS CDK Toolkit Library API 參考](https://docs.aws.amazon.com/cdk/api/toolkit-lib/)。