应用平台 APPSTAGE-IaC Spec包典型目录结构:global与specs的协同关系
global与specs的协同关系
- global文件夹:放置被所有规格目录所复用的配置文件。
global文件夹里面的微服务都可以被规格文件夹specs中的代码复用(可根据meta.yaml指定复用哪些微服务,取决于你在相应环境的部署规划)。
global文件夹的作用类似于Java中的父类,spec类似于继承了global的子类,实际部署时还是使用的specs中的文件,但specs中的文件可以继承和复用global文件。
- meta.yaml:描述变更的组件与过程。
- {microservice}:描述要变更的微服务。
- resources.yaml:微服务变更的主体文件,其他所有的values.yaml、config文件夹中的yaml等文件都围绕此文件展开。文件名必须为resources.yaml。
- 其他文件:为变量配置文件,其定义的内容都会被resources.yaml引用,文件名称可自定义。
- spec文件夹:同一个服务在不同用途环境下所需配置文件(基础设施)。这个文件目录是必须的。
specs是在环境上部署服务时,最终使用的配置文件,当部署服务时,第一关注点和入口就是specs。
specs目录下的规格文件夹,命名采用站点级Cloud Map的名称(cn_product_cbu、eu_product_cbu)。可以在环境管理界面查看可选的站点级Cloud Map名称列表。
当某个规格被选用于部署时,会先将该规格目录下所有文件与global目录进行合并,得到该规格目录最终的所有配置文件,再进行部署动作。