市场资讯
华南代理商sonarqube 扫描报告免费咨询「华克斯」韩懿莹miss内衣
2024-01-07 03:32  浏览:53
3分钟前 华南代理商sonarqube 扫描报告免费咨询「华克斯」[华克斯25b461e]内容:

SonarSource 的产品和服务被世界各地的客户所使用。所有规模的组织都在使用来自 SonarSource 的产品和服务提高生产率, 降低风险, 终开发更好的软件。SonarQube 在欧洲的三不同地点的开发团队每天都在使用。质量结果显示在墙上显示器!Kapsch TrafficCom (理事会) 是智能交通系统的提供商。它的系统采用信息和通信技术来支持和优化公路运输, 包括基础设施、车辆、用户和工业。它在各种交通应用领域的解决方案有助于减少道路交通造成的拥堵和环境污染, 提高交通安全和安全。理事会集团在33国家设有子公司和代表处, 并有3000多名员工。软件质量很重要, 因为 Kapsch 需要向其客户提供jia的软件解决方案, 同时遵循行业标准, 如汽车行业的 MISRA 准则。即将失去对软件质量的关注

Kapsch TrafficCom 因快速扩张而失去了对软件质量的关注。这种扩展导致了一些新的编程语言的使用, 并雇用了许多新的开发人员。理事会预见到需要更好地控制, 遵循编码准则, 并确保它开发的应用程序在发布之前达到了定义的质量目标。此外, 技术债务的趋势需要更加明显, 以帮助决策者达成关于重构与引入新特性的知情决策。由于理事会在静态代码分析中使用了几种不同的解决方案, 因此很难同时将整个代码库的这一概述放在一起。SonARQUBE 的自下而上采用

然后, 瑞典理事会办公室的开发者遇到了 SonarQube。这一收养初是由管理层和其他理事会的开发网站所采纳的自下而上的方法。在年内, 它将被采用在更多的地点, 并作为理事会的主要解决方案, 跟踪代码质量。在这一收养中, 关键是 SonarQube 使用相同的度量标准来衡量每种语言。理事会使用几种不同的语言, 现在它们都可以以统一的方式呈现。可以很容易地看到当前的度量状态, 以及它们是否在正确的方向上移动。此外, 项目组合管理 (视图) 插件允许理事会从多语言应用程序中聚合质量度量, 将每个应用程序的质量统一起来, 并将应用程序进一步聚合到产品、项目和部门质量的统一演示中。更美好的是, "由于我们每夜都在分析我们的大部分产品, 所以现在每个人都可以按需获取xin的结果 (在每个聚合级别)", 瑞典理事会的测试组长约翰 Esbjörner 说。Kapsch TrafficCom 使用的主要功能包括:时间机器-跟踪关键代码质量度量的进度。视图-将多种语言聚合到产品/项目/部门中。差异视图-检查遗留项目中是否引入了新问题。Java API-创建自己的集成插件, 因为它已经做了宝丽来 ALM。SonARQUBE 结果显示在墙上显示器上

SonarQube 目前正被用于检查超过30应用程序和700k 代码行的代码质量, 并且这些数字预计会随着全年的采用而不断增加。它每天都被开发团队使用, 它们遍布欧洲三不同的开发站点。Esbjörner 表示, "我们可以利用我们现有的詹金斯基础结构来触发静态分析, 从而缓解了向 SonarQube 的过渡, 因此无需额外的服务器。让所有利益相关者通过 web 浏览器轻松地访问结果, 并显示在人们走过的墙壁监视器上, 从而提高了对代码质量的认识。这些指标已成为一种帮助, 以可视化需要做什么。早些时候, 开发人员知道代码需要重构, 但是很难得到标准的数据来向决策者展示。现在, 他们可以通过打开 web 浏览器并显示度量和代码来做到这一点。今天, 质量门是为所有语言定义的, 因此新功能并不总能战胜重构。在发布前始终满足di质量级别要求。

代码质量是一个不断增长的市场, 它是分析师对其大规模采用和大量投资回报的雷达。

认知的复杂性提供了一个新的衡量如何硬编码是理解-一个罢工开发商的直觉正确的。下载白皮书本文描述了认知的复杂性, 提出了一种新的度量方法, 以更准确地测量法的相对理解。在这样做的时候, 它解决了这个领域中圈复杂度的缺点。圈复杂度使用数学模型来评估方法, 对测试所需的工作量进行精que测量, 但不准确地测量需要了解它们的工作量。认知的复杂性打破了使用数学模型评估软件可维护性的实践。它从由圈复杂度所设置的先例开始, 但使用人工判断来评估结构应如何计算, 并决定应将哪些内容添加到整个模型中。结果是, 它产生了方法复杂性评分, 使程序员对可维护性的相对评估比以前的模型更公平。

Ansible SonarQube 升级的角色

你可能知道, 并希望使用 SonarQube。这是一个伟大的工具, 是积极的发展和改善。这是伟大的, 如果你是一个开发使用 SonarQube。但是, 如果您碰巧管理 SonarQube 实例, 则由于升级指南由11步骤组成, 因此不断升级非常麻烦。

停止旧的 SonarQube 服务器

下载并解压新的 SonarQube 分布在一个新鲜的目录, 让我们说 NEW_SONARQUBE_HOME

使用默认的 H2 数据库启动它, 并使用更新中心安装您需要的插件

手动安装任何自定义插件

停止新服务器

更新声纳的内容. 属性和包装. 配置文件位于 NEW_SONARQUBE_HOME/配置目录中, 其内容与 OLD_SONARQUBE_HOME/配置目录中的相关文件 (web 服务器 URL、数据库设置等) 有关。不复制-粘贴旧文件

如果使用了自定义 JDBC 驱动程序, 请将其复制到 NEW_SONARQUBE_HOME/扩展/jdbc 驱动程序/<dialect>

备份数据库

删除数据/es 目录

启动新的 web 服务器

复制 http://localhost:9000/setup (用您自己的 URL 替换 "localhost:9000") 来浏览并按照安装说明进行操作

这是一个太多的步骤, 手动执行。因此, 我决定通过为它编写一个 Ansible 的角色来实现自动化。

初始设置

在我开始编写 Ansible 剧本之前, 我需要找到一种方法来测试我的代码。所以我开始与流浪汉旋转了一个虚拟机, 并提供了一个简单的脚本。这是需要有类似的环境, 以我们的实际 SonarQube 生产实例。我能够增量地构建我的 Ansible 剧本并在这个 VM 上测试它。很快我就明白了, 与流浪汉一起工作会减慢我的速度, 因为我需要重置环境, 而不是初的预期。所以我决定考虑泊坞窗。

用于测试的泊坞窗

我找到了正式的 SonarQube 泊坞窗图像, 但无法使用, 因为我们的 SonarQube 实例安装在 CentOS 和官fang图像使用不同的基础图像。另外, 我需要自定义特定的 SonarQube 版本我想开始。因此, 我创建了我们自己的 Dockerfile 与 CentOS 6 基地和 Ansible 安装。

此泊坞窗映像不需要启动 SonarQube, 因为我只是想验证是否进行了正确的文件更改, 而我的 Ansible 手册没有错误。升级的第yi步之一就是关闭服务器。

我将我的剧本装入容器, 并在该容器内运行 Ansible, 对该本地环境进行了更改。

当前脚本的路径

TESTS_DIR = $ (cd "$ (dirname" $ {BASH_SOURCE [0]} ")" &amp; &amp; 密码 "

# 命令测试剧本

TEST_COMMAND = "cd/行动 &amp; &amp; ansible-剧本 $ @

-我 ' 本地主机 '-c

升级-声纳 database.yml "

# 运行容器安装行动为卷

泊坞 run-v "$ TESTS_DIR/.。/行动/:/行动 "

"声纳-升级-测试"/"垃圾/bash-c" $ {TEST_COMMAND} "

在泊坞窗中运行我的剧本大大减少了反馈回路, 所以我决定泊坞窗是走的路。你可以看看我所有的脚本在 GitHub

Ansible 角色

我一步一步地往前走, 我到达了一个点, 一切似乎都在工作, 我有一个非常有用的 Ansible 的角色在我的手中。它尚未发布到 Ansible Galaxy, 但您可以在 GitHub 的 SonarQube 升级 Ansible 角色项目下找到源文件和文档。

当前 Ansible 角色通过在当前位置旁边创建新安装来升级 SonarQube。这提供了回滚的方法 (如果需要)。

此时, 角色执行以下任务:

确保特定的根用户存在于声纳安装

在所有安装所在的目录中创建声纳. sh

确保 SonarQube 服务存在

停止 SonarQube

下载新版本

备份数据库

下载和安装插件

将自定义配置应用于新实例

确保删除数据/es

重新 SonarQube 服务启动新版本

开始 SonarQube

手动步骤

这个过程仍然需要几个手动步骤。

在运行升级手册之前, 应手动确保在升级过程中要安装的插件列表是xin的。您可以从 SonarQube 的管理视图中获得xin支持的版本号。

根据 SonarQube 的建议, 此 Ansible 角色不仅复制以前安装的配置, 而且使用带有变量的模板来为新实例创建配置。这意味着在执行升级之前, 开发人员可以将模板和基本配置与新的 SonarQube 下载进行比较。虽然这是一个手动步骤, 但与以前的操作相比, 它更容易, 因为可以使用 IDE 而不仅仅是从命令行中的 diff 工具进行比较。

这两个步骤都需要后续的手动升级, 我认为这些升级准备活动。

使用SonarQube进行PL / SQL分析 - 配置

发表评论

SonarQubePLSQL2在这个关于使用SonarQube分析PL / SQL代码的新系列的第yi篇文章中,我们看到了如何组织我的分析环境:

一个文件夹C: SRC 与我所有的项目,

于每个项目的子目录,

不同的其他子目录,包括一个'.. Source',其中包含要分析的源代码。

在我们的PL / SQL分析的情况下,这将被放在文件夹'C: SRC Demo PLSQL Source'中。

让我们看看如何用Jenkins来创建和配置SonarQube这个代码的分析。继续阅读→

Jean-Pierre FAYOLLE于2013年12月27日发布了SonarQube - PL / SQL。

使用SonarQube - 组织进行PL / SQL分析

发表评论

SonarQubePLSQL1现在我更新了我的源代码分析环境,随着SonarQube或SonarQube-Runner和Jenkins的升级,时间已经到来更新了一个应用和演示的存储库。继续阅读→

此条目发布于2013年12月22日由Jean-Pierre FAYOLLE发行的SonarQube - PL / SQL。

发表评论
0评