gitops同步回调devops-service的处理逻辑有问题


#1
  • Choerodon平台版本: 0.10.0

  • 问题描述

我们同一个组织下,有三个项目分别为A,B,C;

项目A,B下面有一个应用的名字都叫appS

然后,将项目A,B下打包的appS镜像都发布到应用市场;

最后,C项目下从应用市场随便选择一个叫appS的镜像去部署;

同步就会出现问题,因为代码中找到多个应用时,默认取的都是第一个。

取的第一个后,后面去查询应用版本是否存在,就报appversion.not.exist.in.database;

实际上,我遇到的这个情况,应该取第二个应用。

不知道我能不能解释明白这个问题?实际上如果存在多个同名应用,可能都有这个问题

image

image

image

下面是我临时加的一段修复逻辑,有不当之处请指正
image


#2

您好, 当不同项目下的同一code的应用都发布到应用市场时,选择一个部署,会出现你说的问题,默认取了第一个。然后你的修改方案适合从choerodon平台前端点击部署,如果通过直接从gitops环境库新增release文件部署时,此时实例也会不存在,也会导致version not exist的问题。 我们这边已记录bug, 将在下个版本中修改获取应用的方法。 感谢您的贡献!