

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 CloudFormation CLI 开发自定义 Hook
<a name="hooks-develop"></a>

本节适用于想要开发自定义 Hook 并将其注册到 CloudFormation注册表的客户。它概述了 CloudFormation Hook 的结构，以及使用 Python 或 Java 开发、注册、测试、管理和发布你自己的 Hook 的指南。

开发自定义 Hook 有三个主要步骤：

1. **启动**

   要开发自定义 Hook，必须配置和使用 CloudFormation CLI。要启动 Hook 的项目及其必需的文件，请使用 CloudFormation CLI [https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-init.html](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-init.html)命令并指定要创建挂钩。有关更多信息，请参阅 [启动自定义 CloudFormation Hooks 项目](hooks-init.md)。

1. **模型**

   要建模、创作和验证您的 Hook 架构，请定义 Hook 及其属性和属性。

    CloudFormation CLI 会创建与特定的 Hook 调用点相对应的空处理函数。将您自己的逻辑添加到这些处理程序中，以控制在目标生命周期的每个阶段调用 Hook 期间发生的情况。有关更多信息，请参阅 [建模自定义 CloudFormation 挂钩](hooks-model.md)。

1. **注册**

   要注册 Hook，请提交您的 Hook 以注册为私有或公共第三方扩展。在`[submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html)`操作中注册您的 Hook。有关更多信息，请参阅 [向注册自定义 Hook CloudFormation](registering-hooks.md)。

   以下任务与注册您的 Hook 相关联：

   1. *发布* — 挂钩发布到注册表。

   1. *配置* — 在对堆栈调用类型配置时配置挂钩。
**注意**  
Hook 将在 30 秒后超时，最多重试 3 次。有关更多信息，请参阅 [超时和重试限制](hooks-concepts.md#hook-timeout-and-retry-limits)。

**Topics**
+ [先决条件](hooks-prerequisites.md)
+ [启动一个 Hooks 项目](hooks-init.md)
+ [建模挂钩](hooks-model.md)
+ [注册挂钩](registering-hooks.md)
+ [测试挂钩](testing-hooks.md)
+ [更新挂钩](updating-registered-hook.md)
+ [取消注册挂钩](deregistering-hooks.md)
+ [发布挂钩](hooks-publishing.md)
+ [架构语法](hooks-schema.md)