SuperAPI AI 工具集

infrahub-check-creator

编程与开发

查看项目

更新于 10-16 03:11

技能介绍

用途:为 Infrahub 的 proposed change 流水线编写和调试校验逻辑(checks)。检查由用户自定义,使用 Python 与 GraphQL 实现验证;只要检查记录了任何错误,对应的 proposed change 就无法合并。适用于编写 proposed change 的验证逻辑、创建数据质量守卫(如机架冲突检测)、构建校验某类型全部对象的全局检查、构建校验特定分组对象的定向检查,以及排查检查失败或理解检查生命周期。

主要能力:技能按规则类别组织,包含架构(architecture-,三组件、全局与定向、执行流程,关键级)、Python 类(python-,InfrahubCheck 基类、validate()、log_error/log_info,关键级)、API 参考(api-,类属性、实例属性、方法、生命周期,高级)、注册(registration-,.infrahub.yml 配置、查询名匹配、参数,高级)、模式(patterns-,错误收集、共享工具、限定域校验,中级)、测试(testing-,infrahubctl check 命令、分支测试,低级)。

使用方式:每个检查包含三部分——GraphQL 查询(.gql 文件)用于获取待校验数据;继承 InfrahubCheck 并实现 validate() 的 Python 类,其中 query 属性必须与查询名匹配;在 .infrahub.yml 的 check_definitions 下声明配置。示例结构为 from infrahub_sdk.checks import InfrahubCheck,类内 query = "my_query",在 validate(self, data: dict) 中调用 self.log_error(message=...)。

参考与限制:配套参考包括 examples.md(全局、定向、最小检查模式)、infrahub-common 下的 GraphQL 查询编写参考、.infrahub.yml 项目配置参考、共享规则(Git 集成、缓存注意事项)及 schema 定义。关于具体收费、价格、平台与完整使用步骤,资料暂未提供。