-
Notifications
You must be signed in to change notification settings - Fork 10
Open
Labels
enhancementNew feature or requestNew feature or request
Milestone
Description
描述您的需求
artifacts插件管理所有部署物料包相关内容,包括如下内容:
-
物料提供以下模型
部署包 - id, name, ... 应用差异化变量 数据库差异化变量 -
单元设计关联 - id, cmdb_unit_design_id, artifacts_path, ...
-
差异化变量计算(Expression V2待定版)
Expression V2 相对V1主要改动为:
- 新增 @ CONNECTOR 语法
- 支持filter value嵌套expression
// EBNF语法如下
single_expr: PACKAGE ":" CI filter* ("." ATTR)?
backref_expr: "(" BACKREF_ATTR ")" PACKAGE ":" CI filter* ("." ATTR)?
expression: single_expr
| expression FORWARD_REF single_expr
| expression BACKWARD_REF backref_expr
expression_group: expression // no connector
| expression_group "@" expression
| expression_group "@" CONNECTOR // ends with connector
| (expression_group "@")? CONNECTOR "@" expression_group // group[optional] connect with group
filter: "{" FILTER_NAME OP filter_value "}"
string_list.2: "[" (STRING_VALUE ("," STRING_VALUE)*)? "]"
number_list: "[" (NUMBER_VALUE ("," NUMBER_VALUE)*)? "]"
filter_value : STRING_VALUE
| NUMBER_VALUE
| NULL
| TRUE
| FALSE
| string_list
| number_list
| expression_group
PACKAGE: NAME
CI: NAME
ATTR: NAME
BACKREF_ATTR: NAME
FORWARD_REF: /->|>/
BACKWARD_REF: /~|<-/
OP: NAME
FILTER_NAME: NAME ("." NAME)*
_INNER_STRING: /.*?/ /(?<!\\)(\\\\)*?/
STRING_VALUE.2: "'" _INNER_STRING "'"
CONNECTOR: STRING_VALUE
_INT: /\d+/
_FLOAT: _INT "." _INT? | "." _INT
NUMBER_VALUE: _FLOAT | _INT
NAME: /[a-zA-Z][-_0-9a-zA-Z]*/
NULL: "NULL"
TRUE: "TRUE"
FALSE: "FALSE"- 部署包变量替换 & 上传
本次修改主要目的是让CMDB做更适合CMDB应当做的事,由artifacts插件管理所有部署物料相关功能。
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request