AWS CodeDeploy
User Guide (API Version 2014-10-06)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

AWS CodeDeploy 应用程序规范文件

对 AWS CodeDeploy 唯一的应用程序规范文件(AppSpec 文件)是 YAML 格式文件,用于:

  • 将应用程序修订中的源文件映射到其在实例上的目的地。

  • 为部署的文件指定自定义权限。

  • 指定要在部署过程的各个阶段在每个实例上运行的脚本。

AppSpec 文件用于将每个部署作为一系列生命周期事件进行管理。使用在文件中定义的生命周期事件挂钩,可以在多个独立的部署生命周期事件之后在实例上运行脚本。AWS CodeDeploy 只运行在此文件中指定的脚本,但这些脚本可以调用实例上的其他脚本。您可以运行任何类型的脚本,只要该脚本受实例上运行的操作系统支持即可。

有关如何创建格式正确的 AppSpec 文件的信息,请参阅 AppSpec 文件参考

AWS CodeDeploy 代理如何使用 AppSpec 文件

部署期间,AWS CodeDeploy 代理将在 AppSpec 文件的 hooks 部分中查找当前事件的名称。如果找不到该事件,AWS CodeDeploy 代理将移到下一步。如果找到该事件,AWS CodeDeploy 代理将检索要执行的脚本列表。脚本按其在文件中的出现顺序运行。每个脚本的状态记录在实例上的 AWS CodeDeploy 代理日志文件中。

如果脚本运行成功,则返回退出代码 0(零)。

有关 AWS CodeDeploy 代理日志文件的信息,请参阅 使用 AWS CodeDeploy 代理

Install 事件期间,AWS CodeDeploy 代理使用 AppSpec 文件的 files 部分中定义的映射来确定要从修订复制到实例的文件夹或文件。

如果在操作系统上安装的 AWS CodeDeploy 代理与 AppSpec 文件中列出的代理不匹配,则部署将失败。