腾讯云代码剖析(Tencent Cloud Code Analysis,简称TCA,内部曾用研发代号CodeDog)是一套代码综合剖析平台,包含做事端、Web端和客户端三个组件,支持集成业界常见的代码剖析工具。代码剖析是通过词法剖析、语法剖析、掌握流、数据流剖析等技能对程序代码进行剖析,验证代码是否知足规范性、安全性、可靠性、可掩护性、部分性能等,对代码进行综合剖析和度量等指标的一种代码剖析技能。
TCA系统 可以帮助团队监控项目代码质量问题,创造重复和难以掩护的代码并进行告警,同时开放API,支持与高下游系统对接,集成代码剖析能力。
紧张功能措辞支持:支持 Java/C++/Objective-C/C#/JavaScript/Python/Go/PHP 等数十种措辞,覆盖常用编程措辞
代码检讨:通过代码检讨精准跟踪管理创造的代码质量毛病、代码规范、代码安全漏洞、无效代码等。目前已集成浩瀚自研、有名开源剖析工具,并采取了分层分离架构,可以知足团队快速自助管理工具代码度量:支持代码圈繁芜度、代码重复率和代码统计三个维度监控当前代码情形DevOps集成:客户端通过命令行启动办法,可以快速对接各个DevOps调度体系,并通过标准API接口对接高下游系统
支配利用
1 本地支配Server与Web,通过Docker-Compose
环境依赖1. Docker
2. Docker-Compose >= 3.0
做事支配顺序1. Server做事
2. Web做事
注:Docker-Compose支配脚本已包含 mysql 、 redis 做事支配操作
网络权限须要开放80、8000端口的访问权限(80为TCA平台访问端口,8000为TCA Server访问端口)
做事支配首次启动:
拉取代码并进入源码根目录后,实行 ./compose_init.sh 命令,即可启动Server与Web做事,注:
1. 代码地址: https://github.com/Tencent/CodeAnalysis
2. 如果提示脚本没有实行权限,可以在源码实行命令: chmod +x compose_init.sh
3. 首次启动会构建干系镜像,耗时会比较久, compose_init.sh 脚本会包含各个做事的初始化操作
非首次启动:
进入源码目录后,实行 docker-compose up -d 命令,即可启动Server与Web做事
2 客户端配置
安装Python环境和第三方库1. 预装Python3.7、pip,支持 python3 和 pip3 命令
2. 安装依赖: pip3 install -r client/requirements/app_reqs.pip
安装第三方工具1. 进入到 client/requirements 目录
2. 在命令行中实行安装脚本install.sh(linux/mac环境)或install.bat(windows环境)
配置client/config.ini文件将<Server IP地址>更换成实际的serve ip(可包含端口号)
配置client/codedog.ini文件
1. 填写以下必填项,各字段获取办法,详见第三步接入腾讯云: token , org_sid (团队编号), team_name (项目名称), source_dir (本地代码目录)
2. 按需填写其他可选项,也可以不填,按默认配置实行
启动代码剖析1. 进入到 client 目录下
2. 实行命令: python3 codepuppy.py localscan
3 接入腾讯云
体验申请地址: https://cloud.tencent.com/login?s_url=https%3A%2F%2Fcloud.tencent.com%2Fapply%2Fp%2F44ncv4hzp1
1. 配置项目
2. 创建团队,创建项目
3. 登记代码库
4. 创建剖析方案,配置代码检测规则包
5. 获取codedog.ini干系字段
6. 查当作果
此项目利用Apache 2.0开源协议,开源部分为Server、Web与客户端,须要合营腾讯云利用。更多内容大家可自行前往阅读。
开源地址:https://github.com/Tencent/CodeAnalysis