模板编写规范

OOS实现了运维即代码(Operations as Code或简称Ops as Code)的运维理念。模板(Template)即是OOS产品内Code的具体形式。像优秀的代码需要遵守规范一样,优秀的模板也需要遵守相应的规范。特此建立了模板的编写规范供您参考。此规范同样适用于阿里云提供的所有公共模板。

编写目的

  • 易于阅读和理解模板的用途。

  • 方便后续的模板维护。

  • 方便在组织内分享,建立统一的运维规范。

规范内容

  1. 所有的模板(Template),都要写清楚其目的,包括了什么的运维操作,以达到什么目的。

  2. 所有的动作,前缀都大写,最后一节适用驼峰式。如ACS::ExecuteAPI或ACS::ECS::RunInstances。

  3. 缩进,要统一,建议用2个空格缩进,不允许有Tab和空格混排。

  4. 属性的顺序和符合正常的阅读顺序。可以参考动作的语法顺序。 

    1. 模板(Template)的字段顺序推荐为:FormatVersion,Description,Parameters,RamRole,Tasks,Outputs。

    2. 任务(Task)的字段顺序推荐为:Name,Action,Description,Properties,Loop,Outputs。

    3. 动作ACS::ExecuteAPI的Properties顺序推荐如下:Service,API,Parameters。

  5. ACS::ExecuteAPI里面的Service推荐用大写,如ECS,RDS等。

  6. JQ selector,(如PropertySelector,ValueSelector)里面不要以点(.)开头。虽然系统兼容有点和没点的两种情况,但是没点看起来更优美一些。Parameter Name,Task Name,Output Name建议使用驼峰式命名,例如 InstanceId,CreateInstance。