TencentBlueKing / bk-ci

蓝鲸持续集成平台(蓝盾)
https://bk.tencent.com
Other
2.37k stars 498 forks source link

请问后端如何在IDEA中启动起来进行调试 #6477

Closed xbsummer closed 2 years ago

xbsummer commented 2 years ago

请问后端代码,在IDEA中已经编译好了, 如何启动起来, 直接在IDEA里面进行接口断点调试。

irwinsun commented 2 years ago

请问后端代码,在IDEA中已经编译好了, 如何启动起来, 直接在IDEA里面进行接口断点调试。

文档之前写了一部分,但一直没写完,蓝盾的整个平台链条较长,从前端到后台到底层控制Agent全都涉及 1、网关程序(OpenRestry & Lua) 2、和前端Web (NodeJs) 3、流水线服务后台 (kotlin) 4、构建机调度程序 (kotlin) 5、构建机管控Agent程序 (golang) 6、流水线插件(golang、java&kotlin、python、NodeJs)

社区目前还是只有少数同学熟悉这套开发流程并能独立调试, 有一定的开发学习门槛, 以及开发调试的成本, 需要投入时间摸索 先看这前部分介绍,再看下面临时码的字吧:

https://github.com/Tencent/bk-ci/blob/master/docs/dev/Backend_dev.md

1、开发机需要安装好Consul 2、开发机需要能有一个连得上的MySQL、Redis、RabbitMQ

这块文档还没整好,在外部调试还是有点费劲,因为微服务较多,互相都可能存在依赖关系,所以如果全部在本机启动的话,不太现实,我先说一种方法,启动整合后的后台微服务boot-assembly 微服务(整合所有微服务,除了公共构建机dockerhost和无编译环境buildless模块, 启动有点慢)。

service-suffix 这个参数是用于注册到服务中心带的前缀,如果是采用boot-assembly独立运行,才使用 -Dservice-suffix=bk-ci 如果是单独微服务的话,则直接放空串 -Dservice-suffix= 即可

image

还有另一种方式是只启动某个微服务,比如 process. 操作方式与上述类型,只是配置文件不同而已。 但需要先有一台CVM先把整个蓝盾服务部署(假设为测试集群A)并启动,并与你要调试的模块在同一个consul注册中心,以便你本地开发启动的服务能注册到测试集群A

xbsummer commented 2 years ago

谢谢,我先按照你说的试试。 有问题再请教。