Exemple #1
0
 def test_field_explain_to_dict(self):
     explain = FieldExplain(key="key", type=Type.STRING, description="desc")
     self.assertEqual(explain.to_dict(), {
         "key": "key",
         "type": "string",
         "description": "desc"
     })
Exemple #2
0
    def _self_explain(cls, **kwargs) -> List[FieldExplain]:
        fields = [
            FieldExplain(key="${KEY}",
                         type=Type.STRING,
                         description="选择的IP列表,以,分隔")
        ]

        client = get_client_by_user(settings.SYSTEM_USE_API_ACCOUNT)
        params = {"bk_obj_id": "set"}
        resp = client.cc.search_object_attribute(params)
        resp_data = []
        if not resp["result"]:
            logger.error("[_self_explain] %s search_object_attribute err: %s" %
                         (cls.tag, resp["message"]))
        else:
            resp_data = resp["data"]

        for item in resp_data:
            fields.append(
                FieldExplain(
                    key="${KEY.%s}" % item["bk_property_id"],
                    type=Type.LIST,
                    description="集群属性(%s)列表" % item["bk_property_name"],
                ))
            fields.append(
                FieldExplain(
                    key="${KEY.flat__%s}" % item["bk_property_id"],
                    type=Type.STRING,
                    description="集群属性(%s)列表,以,分隔" % item["bk_property_name"],
                ))

        return fields
Exemple #3
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [
         FieldExplain(key="${KEY}", type=Type.DICT, description="用户选择的选项的text与value以及未选中的text与value"),
         FieldExplain(key='${KEY["value"]}', type=Type.STRING, description="用户选中选项的value,多个以,分隔"),
         FieldExplain(key='${KEY["text"]}', type=Type.STRING, description="用户选中选项的text,多个以,分隔"),
         FieldExplain(key='${KEY["value_not_selected"]}', type=Type.STRING, description="用户未选中选项的value,多个以,分隔"),
         FieldExplain(key='${KEY["text_not_selected"]}', type=Type.STRING, description="用户未选中选项的text,多个以,分隔"),
     ]
Exemple #4
0
    def _self_explain(cls, **kwargs) -> List[FieldExplain]:

        fields = [
            FieldExplain(key="${KEY}",
                         type=Type.OBJECT,
                         description="集群资源筛选结果对象"),
            FieldExplain(key="${KEY.set_count}",
                         type=Type.INT,
                         description="新增集群数量"),
            FieldExplain(key="${KEY._module}",
                         type=Type.LIST,
                         description="集群下的模块信息列表,元素类型为字典,键为模块名,值为模块下的主机列"),
            FieldExplain(key="${KEY.flat__ip_list}",
                         type=Type.STRING,
                         description="本次操作创建的所有集群下的主机(去重后),用 ',' 连接"),
            FieldExplain(
                key="${KEY.flat__verbose_ip_list}",
                type=Type.STRING,
                description="返回的是本次操作创建的所有集群下的主机(未去重),用 ',' 连接",
            ),
            FieldExplain(
                key="${KEY.flat__verbose_ip_module_list}",
                type=Type.STRING,
                description="本次操作创建的所有模块名称,格式为set_name>module_name,用 ',' 连接",
            ),
        ]

        client = get_client_by_user(settings.SYSTEM_USE_API_ACCOUNT)
        params = {"bk_obj_id": "set"}
        if "bk_biz_id" in kwargs:
            params["bk_biz_id"] = kwargs["bk_biz_id"]
        resp = client.cc.search_object_attribute(params)
        resp_data = []

        if not resp["result"]:
            logger.error("[_self_explain] %s search_object_attribute err: %s" %
                         (cls.tag, resp["message"]))
        else:
            resp_data = resp["data"]

        for item in resp_data:
            if not item["editable"]:
                continue
            fields.append(
                FieldExplain(
                    key="${KEY.%s}" % item["bk_property_id"],
                    type=Type.LIST,
                    description="集群属性(%s)列表" % item["bk_property_name"],
                ))
            fields.append(
                FieldExplain(
                    key="${KEY.flat__%s}" % item["bk_property_id"],
                    type=Type.STRING,
                    description="集群属性(%s)列表,以,分隔" % item["bk_property_name"],
                ))

        return fields
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [
         FieldExplain(key="${KEY}", type=Type.STRING, description="选择了的集群模块的信息"),
         FieldExplain(key="${KEY.set_name}", type=Type.STRING, description="选择的集群名称"),
         FieldExplain(key="${KEY.set_id}", type=Type.INT, description="选择的集群ID"),
         FieldExplain(key="${KEY.module_name}", type=Type.LIST, description="选择的模块名列表"),
         FieldExplain(key="${KEY.flat__module_name}", type=Type.STRING, description="选择的模块名列表,以,连接"),
         FieldExplain(key="${KEY.module_id}", type=Type.LIST, description="选择的模块ID列表"),
         FieldExplain(key="${KEY.flat__module_id}", type=Type.STRING, description="选择的模块ID列表,以,连接"),
     ]
Exemple #6
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [
         FieldExplain(key="${KEY}", type=Type.DICT, description="主机属性查询结果"),
     ]
Exemple #7
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [
         FieldExplain(key="${KEY}",
                      type=Type.STRING,
                      description="选择的IP列表,以,分隔")
     ]
Exemple #8
0
 def _self_explain(cls, **kwargs):
     return [
         FieldExplain(key=kwargs["key"],
                      type=Type.STRING,
                      description="desc")
     ]
Exemple #9
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [FieldExplain(key="${KEY}", type=Type.INT, description="用户输入的数值")]
Exemple #10
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [FieldExplain(key="${KEY}", type=Type.STRING, description="用户选择的时间,输出格式: 2000-04-19 14:45:16")]
Exemple #11
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [FieldExplain(key="${KEY}", type=Type.STRING, description="用户选择的自定义格式的日期时间")]
Exemple #12
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [FieldExplain(key="${KEY}", type=Type.STRING, description="用户选择的日期,格式为2000-04-19")]
Exemple #13
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [FieldExplain(key="${KEY}", type=Type.STRING, description="选中的 value,多选模式下输出选中 value 以 ',' 拼接的字符串")]
Exemple #14
0
 def _self_explain(cls, **kwargs) -> List[FieldExplain]:
     return [FieldExplain(key="${KEY}", type=Type.STRING, description="用户输入的密码加密后的值")]