pipeline-variable-management
npx skills add https://github.com/tencentblueking/bk-ci --skill pipeline-variable-management
Agent 安装分布
Skill 文档
æµæ°´çº¿åé管ç宿´æå
Skill æ¦è¿°
Skill åç§°: Pipeline Variable Management
éç¨åºæ¯: æµæ°´çº¿åéçå
¨çå½å¨æç®¡çä¸å段æ©å±
éè¦æ§: ââââ (é«ä¼å
级)
ææ¡£çæ¬: 2.0
æåæ´æ°: 2025-01
æµæ°´çº¿å鿝 BK-CI æµæ°´çº¿ä¸çæ ¸å¿åè½ï¼æ¯æå¨æµæ°´çº¿ç¼æãæå»ºæ§è¡è¿ç¨ä¸å¨æä¼ éåç®¡çæ°æ®ãæ¬ Skill æä¾åé管ççä¸¤å¤§æ ¸å¿ä¸»é¢ï¼
- åéçå½å¨æ – åéä»å建å°éæ¯ç宿´æµç¨
- åéåæ®µæ©å± – å¦ä½æ©å±åéçæ°æ®ç»æ
ä¸ãåéç®¡çæ¶ææ¦è§
1.1 åéçå®ä¹ä¸ä½ç¨
æµæ°´çº¿åéæ¯æµæ°´çº¿ä¸ç¨äºåå¨åä¼ éæ°æ®çæ ¸å¿æºå¶ï¼æ¯æï¼
- â é ç½®åæ°å – å°æµæ°´çº¿é ç½®ä¸çåºå®å¼æ¿æ¢ä¸ºåé
- â æ°æ®ä¼ é – å¨ä¸å Stage/Job/Task ä¹é´ä¼ éæ°æ®
- â å¨æè®¡ç® – è¿è¡æ¶å¨æçæåæ´æ°åéå¼
- â ç¨æ·è¾å ¥ – æå¨è§¦åæ¶ç±ç¨æ·è¾å ¥åæ°å¼
- â ç³»ç»å ç½® – æä¾ç³»ç»çº§å«çé¢å®ä¹åé
1.2 åéçä¸¤ç§æ ¸å¿æ¨¡å
BK-CI 䏿µæ°´çº¿åéåå¨ä¸¤ç§æ°æ®æ¨¡åçåå转æ¢ï¼
1. BuildFormPropertyï¼å端å 鍿¨¡åï¼
- ä½ç½®:
common-pipeline/src/main/kotlin/.../BuildFormProperty.kt - ç¨é: å¾®æå¡å é¨ä½¿ç¨ï¼æ°æ®åºå卿 ¼å¼
- ç¹ç¹: 宿´çåæ®µå®ä¹ï¼å å« Swagger 注解
- åºç¨: Process 模åå é¨å¤çãæ°æ®æä¹ å
2. Variableï¼YAML 模åï¼
- ä½ç½®:
common-pipeline-yaml/src/main/kotlin/.../yaml/v3/models/Variable.kt - ç¨é: YAML æµæ°´çº¿å®ä¹ï¼å¯¹å¤ API 交äº
- ç¹ç¹: Jackson æ³¨è§£ï¼æ¯æ JSON åºåå
- åºç¨: PAC æµæ°´çº¿ãOpenAPI æ¥å£
3. 转æ¢å¨ï¼VariableTransferï¼
- ä½ç½®:
common-pipeline-yaml/src/main/kotlin/.../yaml/transfer/VariableTransfer.kt - èè´£: å®ç°
BuildFormPropertyâVariableçååè½¬æ¢ - æ ¸å¿æ¹æ³:
transfer(BuildFormProperty): Variable– å 鍿¨¡å â YAML 模åtransfer(Variable): BuildFormProperty– YAML 模å â å 鍿¨¡å
1.3 åéçåå¨ä¸ä¼ é
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
â åéåå¨ä¸ä¼ éæ¶æ â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
ââââââââââââââââââââ
â æµæ°´çº¿é
ç½®åå¨ â BuildFormProperty
â (T_PIPELINE_*) â åå¨å¨ Model JSON ä¸
ââââââââââ¬ââââââââââ
â
â¼
ââââââââââââââââââââ
â æå»ºå¯å¨ â 读ååéå®ä¹
â (StartBuild) â åå§ååéå¼
ââââââââââ¬ââââââââââ
â
â¼
ââââââââââââââââââââ
â è¿è¡æ¶åéåå¨ â T_PIPELINE_BUILD_VAR
â (BuildVar) â æå»ºçº§å«çåéå®ä¾
ââââââââââ¬ââââââââââ
â
âââââââââââââââââââ¬ââââââââââââââââââ
â¼ â¼ â¼
ââââââââââââââââââ ââââââââââââââââââ ââââââââââââââââââ
â Stage 1 â â Stage 2 â â Stage 3 â
â ç»§æ¿ + æ°å¢ â â ç»§æ¿ + æ´æ° â â ç»§æ¿ + è¾åº â
ââââââââââââââââââ ââââââââââââââââââ ââââââââââââââââââ
äºãä¸¤å¤§æ ¸å¿ä¸»é¢
2.1 åéçå½å¨æç®¡ç
è¦çå 容ï¼
- ð åéå建ä¸åå§å
- ð¦ åéå卿ºå¶
- ð åéä¼ éä¸ç»§æ¿
- ð åéå¨ææ´æ°
- ð åéæ¥è¯¢ä¸è°è¯
å ¸ååºæ¯ï¼
- çè§£åéå¨æå»ºæ§è¡è¿ç¨ä¸ç宿´æµè½¬
- å¼åæ°çåéåå§åé»è¾
- è°è¯åéä¼ éé®é¢
- å®ç°åéçå¨ææ´æ°åè½
æ¥é ææ¡£: reference/1-lifecycle.md (1414 è¡)
2.2 åéåæ®µæ©å±
è¦çå 容ï¼
- ð æ°å¢åéåæ®µ
- ð§ åæ®µç±»åå®ä¹
- ð æ¨¡å转æ¢å¤ç
- ð¯ ååç«¯åæ®µåæ¥
å ¸ååºæ¯ï¼
- 为åéæ·»å æ°ç屿§å段
- æ©å±åéç±»å
- å¤çå岿°æ®å ¼å®¹æ§
- 忥ååç«¯åæ®µå®ä¹
æ¥é ææ¡£: reference/2-extension.md (534 è¡)
ä¸ãä½¿ç¨æå
3.1 åºæ¯ 1ï¼çè§£åéçå½å¨æ
é®é¢ç¤ºä¾ï¼
- “åé弿¯å¦ä½ä»æµæ°´çº¿é ç½®ä¼ éå°æå»ºæ§è¡çï¼”
- “æä»¶å¦ä½è·ååæ´æ°åéå¼ï¼”
- “åéçä½ç¨åæ¯å¦ä½æ§å¶çï¼”
æä½ï¼ æ¥é reference/1-lifecycle.md
å 容å å«ï¼
- åéçå½å¨æå ¨æ¯å¾
- å ä¸ªå ³é®é¶æ®µè¯¦è§£
- åéåå¨è¡¨ç»æ
- åéä¼ éæºå¶
- è°è¯æ¹æ³ä¸å¸¸è§é®é¢
3.2 åºæ¯ 2ï¼æ©å±åéåæ®µ
é®é¢ç¤ºä¾ï¼
- “å¦ä½ä¸ºåéæ·»å ä¸ä¸ªæ°ç
allowModifyåæ®µï¼” - “å¦ä½æ©å±åéçå¯éå¼å表4
- “å¦ä½ç¡®ä¿æ°åæ®µå¨ YAML åå 鍿¨¡åä¹é´æ£ç¡®è½¬æ¢ï¼”
æä½ï¼ æ¥é reference/2-extension.md
å 容å å«ï¼
- åéåæ®µæ©å±å®æ´è·¯å¾
- BuildFormProperty åæ®µå®ä¹
- Variable (YAML) åæ®µå®ä¹
- VariableTransfer 转æ¢å¨å®ç°
- åç«¯åæ®µåæ¥
- æµè¯ä¸éªè¯
åãæ ¸å¿ç±»ä¸æä»¶éæ¥
4.1 åéå®ä¹ç±»
| ç±»å | ä½ç½® | ç¨é |
|---|---|---|
BuildFormProperty |
common-pipeline/.../BuildFormProperty.kt |
å端å é¨å鿍¡å |
Variable |
common-pipeline-yaml/.../Variable.kt |
YAML å鿍¡å |
VariableTransfer |
common-pipeline-yaml/.../VariableTransfer.kt |
模å转æ¢å¨ |
4.2 åéå¤çæå¡
| ç±»å | ä½ç½® | èè´£ |
|---|---|---|
PipelineVariableService |
process/biz-base/.../PipelineVariableService.kt |
åéä¸å¡é»è¾ |
BuildVariableService |
process/biz-base/.../BuildVariableService.kt |
æå»ºåé管ç |
VariableAcrossInfoUtil |
process/biz-base/.../VariableAcrossInfoUtil.kt |
è·¨ Job åéä¼ é |
4.3 æ°æ®åºè¡¨
| 表å | ç¨é |
|---|---|
T_PIPELINE_BUILD_VAR |
æå»ºçº§å«çåéå®ä¾ï¼è¿è¡æ¶ï¼ |
T_PIPELINE_SETTING |
æµæ°´çº¿é ç½®ï¼å å«åéå®ä¹ï¼ |
T_PIPELINE_MODEL_TASK |
æä»¶é ç½®ï¼å¼ç¨åéï¼ |
äºãå¼åæµç¨
5.1 åéåè½å¼åæµç¨
1. æç¡®éæ±
â
2. ç¡®å®æ¶åççå½å¨æé¶æ®µ
â â æ¥é
reference/1-lifecycle.md
â
3. æ¯å¦éè¦æ©å±å段ï¼
ââ æ¯ â æ¥é
reference/2-extension.md
â æ§è¡å段æ©å±æµç¨
â
4. å®ç°å端é»è¾
â â ä¿®æ¹ Service/DAO å±
â
5. åç«¯åæ¥ï¼å¦éï¼
â â æ´æ° Vue ç»ä»¶
â
6. æµè¯éªè¯
â â åå
æµè¯ + éææµè¯
â
7. ææ¡£æ´æ°
5.2 常è§å¼åä»»å¡
| ä»»å¡ | åèææ¡£ | å ³é®ç±» |
|---|---|---|
| æ°å¢åéç±»å | 2-extension.md | BuildFormProperty, Variable |
| åéåå§åé»è¾ | 1-lifecycle.md | BuildVariableService |
| è·¨ Job ä¼ é | 1-lifecycle.md | VariableAcrossInfoUtil |
| åéæéæ§å¶ | 1-lifecycle.md | PipelineVariableService |
| åé表达å¼è§£æ | – | utility-components Skill (reference/2-expression-parser.md) |
å ãä¸å ¶ä» Skill çå ³ç³»
6.1 ä¾èµç Skill
pipeline-model-architecture– çè§£åéå¨ Model ä¸çä½ç½®process-module-architecture– çè§£åéå¤ççä»£ç æ¶æutility-components(reference/2-expression-parser.md) – åéå¼ç¨ç表达å¼è§£æ
6.2 被å¼ç¨çåºæ¯
- PAC æµæ°´çº¿ â åéå¨ YAML ä¸çå®ä¹
- æµæ°´çº¿ç¼æ â åéçå建åé ç½®
- æå»ºæ§è¡ â åéçåå§ååä¼ é
- æä»¶å¼å â æä»¶å¦ä½è¯»ååæ´æ°åé
ä¸ãè¯¦ç»ææ¡£å¯¼èª
| ææ¡£ | å 容 | è¡æ° | æä»¶å¤§å° |
|---|---|---|---|
| 1-lifecycle.md | åéçå½å¨æå®æ´æµç¨ | 1414 | 78.7KB |
| 2-extension.md | åéåæ®µæ©å±æå | 534 | 20.2KB |
使ç¨å»ºè®®:
- åå¦è ï¼å é è¯»æ¬ææ¡£äºè§£æ´ä½æ¶æï¼åæ·±å ¥ 1-lifecycle.md
- å¼åè ï¼æ ¹æ®å ·ä½å¼åä»»å¡ç´æ¥æ¥é 对åºç reference ææ¡£
- è°è¯ï¼ä¼å æ¥é 1-lifecycle.md ä¸çè°è¯ç« è
å «ã常è§é®é¢ FAQ
Q1: åéååæ°æä»ä¹åºå«ï¼
A: å¨ BK-CI ä¸ï¼”åé”å”åæ°”æ¬è´¨ä¸æ¯åä¸ä¸ªæ¦å¿µï¼é½æ¯ BuildFormPropertyãåºå«å¨äºä½¿ç¨åºæ¯ï¼
- åæ°ï¼æµæ°´çº¿å¯å¨æ¶ç¨æ·è¾å ¥çåé
- åéï¼æµæ°´çº¿å é¨å®ä¹å使ç¨çåé
Q2: å¦ä½å®ç°è·¨ Stage ä¼ éåéï¼
A: æ¥é
reference/1-lifecycle.md ä¸ç”é¶æ®µåï¼è·¨å®¹å¨ä¼ é”ç« èï¼äºè§£ VariableAcrossInfoUtil ç使ç¨ã
Q3: æ°å¢å段ååç«¯ä¸æ¾ç¤ºæä¹åï¼
A: æç § reference/2-extension.md ç”æ¥éª¤ 4ï¼åç«¯åæ®µåæ¥”ç« èï¼ç¡®ä¿å端 Vue ç»ä»¶å·²åæ¥æ´æ°ã
Q4: åéå¼ä¸ºç©ºæä¸æ£ç¡®ï¼
A: æ¥é reference/1-lifecycle.md ä¸ç”è°è¯æ¹æ³”ç« èï¼ä½¿ç¨æ¥å¿åæ°æ®åºææ¥ã
ä¹ãçæ¬åå²
| çæ¬ | æ¥æ | æ´æ°å 容 |
|---|---|---|
| 2.0 | 2025-01 | æ´å pipeline-variable-lifecycle å pipeline-variable-extensionï¼éç¨ reference ç»æ |
| 1.x | 2024-12 | ç¬ç«ç两个 Skill |