节点在线、应用在线、配置在线使用令牌查询
|
# Tasks
- [x] Task 1: AppDeploy 实体新增 DeployKey å—æ®µ
- [x] 在 `Stardust.Data/Deployment/Model.xml` çš„ AppDeploy è¡¨ä¸æ–°å¢ž `DeployKey` Column,DataType=String,Length=2000,Description="仓库密钥。SSH ç§é’¥ï¼Œç”¨äºŽéžäº¤äº’弿‹‰å–ç§æœ‰ä»“库代ç ",Category="ç¼–è¯‘å‚æ•°"
- [x] è¿è¡Œ xcode 生æˆå®žä½“代ç
- [x] Task 2: CompileCommand 模型新增 DeployKey 属性
- [x] 在 `Stardust.Models/CompileCommand.cs` 新增 `DeployKey` 属性(String?)
- [x] 在 `DeployAgent/Commands/CompileCommand.Model.cs` 新增 `DeployKey` 属性(String?)
- [x] Task 3: Web 端 DeployService ä¼ é€’ DeployKey
- [x] 在 `Stardust.Web/Services/DeployService.cs` çš„ Compile 方法ä¸ï¼Œæž„é€ CompileCommand æ—¶æ·»åŠ `DeployKey = app.DeployKey`
- [x] Task 4: DeployAgent 实现 SSH 密钥管ç†å’Œ Git SSH æ“作
- [x] 新增 `SetupSshKey(String? deployKey)` 方法:将ç§é’¥å†™å…¥ä¸´æ—¶æ–‡ä»¶ï¼Œè¿”回临时文件路径(或 null)
- [x] 新增 `CleanupSshKey(String? keyFile)` æ–¹æ³•ï¼šåˆ é™¤ä¸´æ—¶å¯†é’¥æ–‡ä»¶
- [x] 修改 `CreateProcessStartInfo` 方法,支æŒä¼ å…¥ `GIT_SSH_COMMAND` 环境å˜é‡
- [x] 修改 `OnCompile` 方法:在 Git æ“作å‰è°ƒç”¨ `SetupSshKey`,在 finally ä¸è°ƒç”¨ `CleanupSshKey`
- [x] 修改 `GitClone` å’Œ `GitPull` æ–¹æ³•ï¼ŒæŽ¥å— `GIT_SSH_COMMAND` 傿•°å¹¶ä¼ 递给 `CreateProcessStartInfo`
# Task Dependencies
- Task 2 depends on Task 1(CompileCommand å—æ®µä¸Ž AppDeploy å—æ®µå¯¹åº”)
- Task 3 depends on Task 2(Web ç«¯éœ€è¦ CompileCommand 模型已有 DeployKey 属性)
- Task 4 depends on Task 2(DeployAgent éœ€è¦ CompileCommand 模型已有 DeployKey 属性)
- Task 3 å’Œ Task 4 å¯å¹¶è¡Œæ‰§è¡Œ
|