中国sonarqube经销商-苏州华克斯公司

SonarSource

提高应用价值, 降低软件开发风险

成功的组织在过程中向前移动质量分析并使其迭代

作为整个软件开发生命周期的一部分。开发和测试世界和业务

方法以及正在向敏捷模型演进-持续的价值生成/连续

改进/连续检验是提高质量的重要战略。这些都是

IDC 为 end-user 客户和服务提供商所观察到的关键策略:

?传统的代码质量方法通常在测试成为检查表项时失败

在开发过程结束时, QA 团队运行一个工具并返回

开发团队在软件进入之前需要采取的行动列表

生产.这可能导致延迟和预算超支。所以会发生什么

经常是管理标志移动项目, 没有质量门

发展.

?在项目开始时从项目代码分析中收集适当的度量标准

是至关重要的。如果没有正确的度量标准 (或任何度量标准), 代码库可能会在没有人注意的情况下恶化, 或者在技术债wu达到一定的时候才会注意到

在时间和预算限制的情况下, 成本太高而无法解决的级别。收集

代码度量连续可以提供可见性,代理商sonarqube经销商, 并使团队的优势

控制代码库的技术债wu。

?理解要修复的代码也是的。通常, 团队开始重构

因为他们认为代码库在性能、脆性、不稳定性方面是不好的,

难于维护和扩展。但如果没有正确的语境分析, 它是

无法检测到代码库的哪个部分负责所遇到的问题。

因此, 更改可能会应用到错误的代码, 或者正确的代码被重构

错误的方式, 或只有部分问题得到解决。这是一个度量和工具的领域

可以通过标识导致问题的代码部分来帮助。

确保持续的软件质量是成功的关键

end-user 公司和服务组织都必须运行软件开发作为

业务.这样做的一部分是管理软件的远程可维护性, 即

发展今天你需要保持明天。积极主动的架构, 也

所创建内容的质量是管理软件长期支出的关键

维护;保存错误的、结构较差的软件是更昂贵的。

在这方面, 应用程序维护团队还需要对软件进行可视化, 以便能够更好地

维护代码以降低成本, 实现更好的质量, 并提高客户响应能力

和 ROI。在将任何代码发送到客户之前, 为代码建立一致的进程

分析可以帮助确保必须运行软件的公司的长期改进

有效地发展。

SONARSOURCE 和 SONARQUBE 平台

SonarSource: 介绍

SonarSource 是一家瑞士公司, 成立于2008年。该公司诞生的愿望

处理和解决与软件质量相关的不断增长的问题, 并为市场带来解决方案

可以跟踪的软件开发过程中的代码质量。在竞争激烈的市场中

来自少数提供商的服务, SonarSource 的投资组合是由它的根在开放的区别

来源, 其可访问性, 和一系列的参与选项从包装和定价

角度.

SonarQube 平台被创造了并且采取了到市场 (作为 '声纳'), 与 SonarSource

在2009年10月发布该平台的第yi个商业插件。到 2010年3月,

SonarSource 开始看到社区和企业都接受了 SonarQube 平台,

到那时,华南sonarqube经销商, 一个月被超过2000次。在 2010年5月, SonarSource

发布的 COBOL 和 Visual Basic plug-ins, 随后几个月后由一个 SQALE 插件,

c# 插件 (2011年6月) 和 PL/SQL 插件 (2011年9月)。

该公司的主要意图是带来负担得起的和直观的质量解决方案和分析

开发人员还提供了广泛、分布式使用的功能。今天, SonarSource 有

约有350客户, 包括德意志银行、美国银行、米其林、

西班牙、法国巴黎银行、泰雷兹和 EADs。SonarQube 平台使用约300

客户, 与3万和4万安装。该公司已看到的

在过去几年的增长, 它现在雇用了超过30员工, 从20人

就在12月前








SonarSource简介


代码质量是软件发明时出现的问题。代码质量差会导致各种问题: 团队速度低、应用程序退役、生产崩溃、公司声誉不佳..。在 SonarSource, 我们提供了解决方案, 以提高维修性, 可靠性和安全性。性问题

这通常被称为技术债务。与可维护性相关的问题在我们的产品中被命名为 '代码气味'。从本质上说, 软件预计会随着时间的推移而改变, 这意味着今天编写的代码将在明天更新。在代码库中进行此类更改的能力、成本和时间直接与其可维护性级别相关。换言之, 低可维护性意味着开发团队的低速。可维护性包括模块化、理解、可变性、可测试性和可重用等许多概念。它不采取关键问题的形式, 而是数以千计的小问题与jia做法的结果。






 


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') 来浏览并按照安装说明进行操作

这是一个太多的步骤, 手动执行。因此,中国sonarqube经销商, 我决定通过为它编写一个 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 进行比较。虽然这是一个手动步骤,中国sonarqube经销商, 但与以前的操作相比, 它更容易, 因为可以使用 IDE 而不仅仅是从命令行中的 diff 工具进行比较。

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




中国sonarqube经销商-苏州华克斯公司由苏州华克斯信息科技有限公司提供。行路致远,砥砺前行。苏州华克斯信息科技有限公司致力成为与您共赢、共生、共同前行的战略伙伴,更矢志成为行业软件具有竞争力的企业,与您一起飞跃,共同成功!

苏州华克斯信息科技有限公司
姓名: 华克斯 先生
手机: 13862561363
业务 QQ: 3521016152
公司地址: 苏州工业园区新平街388号
电话: 0512-62382981
传真: 0512-62382981