DevOps组织不断寻找能提高DevOps生产力的方法,并加快其上市时间。但如果缺乏适当的集成化工具,这将变得极具挑战。
1
为何加速DevOps是一项重大挑战?
加速DevOps是最主要的挑战,因为在开发过程的早期,您必须发现安全、合规和编码方面的缺陷,否则这些缺陷将变得愈发复杂、昂贵,从而导致无法修复。这一挑战经常被放大,因为在集成和预生产阶段中,反馈经常会延迟。
加速DevOps时最常见的挑战包括:
迅速发现并尽早修复代码错误。满足代码安全和合规要求(DevSecOps)。建立跨团队协作和报告机制(问题的可见性)。集成代码质量和版本工具。提高在大型代码库中识别问题的速度和准确度。
2
如何使用正确的工具来加速DevOps?
通过集成开发周期加速工具与静态代码分析解决方案,您可以更快地将产品推向市场。
Incredibuild是什么?
Incredibuild是一款开发周期加速工具,旨在帮助您加速计算密集型任务。通过跨本地网络或云中的空闲CPU无缝且并发地分配进程,Incredibuild能够从根本上缩短几乎任何工作负载的计算时间。这对于编译源代码和构建软件尤其有利,因为任务可以通过网络分发到多台计算机上。
Klocwork是什么?
Klocwork是面向C、C++、C#和Java的静态代码分析和SAST工具之一。Klocwork为企业DevOps和DevSecOps而生,可扩展到任何规模的项目,并与大型复杂环境和广泛的开发工具集成。再加上它的差异分析,Klocwork已经成为保持高开发速度的首选解决方案,同时加强了对安全及质量的持续管控。更重要的是,Klocwork的独特之处在于它可以处理巨大的代码库-如AndroidAOSP和UnrealEngine。这意味着当Klocwork和Incredibuild一起使用时,构建时间将显著减少。
3
为何Incredibuild用户应当使用Klocwork?
Incredibuild可加速计算密集型的工作负载。通过将其与Klocwork配合使用,Incredibuild能够快速分析整个代码库,在开发早期识别编码漏洞和错误,并确保执行编码标准。
Klocwork与Incredibuild相得益彰…
差异化分析
通过使用来自服务器的系统上下文数据,Klocwork能够仅分析已更改的文件,同时还提供不同的分析结果,就像对整个系统进行了分析一样。可使您尽量缩短新代码和更改代码的分析时间。
集成分析
Klocwork使用来自服务器的系统上下文数据来提供软件项目当前总体运行状况的快照。每次集成分析后,Klocwork都会提供一个检测到的编码问题列表,以及关于代码的其他报告。通过定期运行集成分析,您能够提高代码质量,确保软件安全和安全标准得到适当执行,并确保代码库的一致性。
4
为何Klocwork用户应当使用Incredibuild?
Klocwork有助于确保代码的安全、可靠和兼容。通过将它与Incredibuild配合使用,Klocwork用户可以在片刻内分析大量代码库,从而加快构建过程。
Incredibuild与Klocwork相辅相成…
虚拟化分布式处理
当执行多个并发进程的工作负载时,Incredibuild会自动地、动态地将这些进程分布到网络或云中的远程机器的空闲cpu上。
5
为什么应当使用Incredibuild和Klocwork?
通过结合使用Incredibuild和Klocwork,可轻松应对DevOps与DevSecOps的挑战。这两个解决方案可以无缝地集成到您的软件开发生命周期(SDLC)工具链中,以在任何规模的代码库上提供可操作的反馈,并确保开发工作高速推进。
凭借Incredibuild和Klocwork,您的团队将能够极快地运行静态代码分析扫描,并在大约几分钟内获得一份涵盖所有关键安全和防护标准的完整报告,包括MISRA、AUTOSAR、CERT和OWASP。
此外,如果您的团队正在为冗长的构建周期和反馈延迟而苦苦挣扎,您可以使用Incredibuild在需要的机器上利用成千上万的核心计算力。这使您能够将构建过程从几天缩短到几小时甚至几分钟。此外,如果本地网络连接的机器不能提供足够的能量,还可以使用Incredibuild编排基于云的机器实例网格,以更快地执行分析工作。
6
并用Incredibuild和Klocwork的优势
您将提高DevOps的生产率,同时也提升了软件交付质量。例如,在Incredibuild的帮助下,您可以充分利用现有的硬件资源。除了IT的成本效率收益外,您还将从缩短超长开发和构建周期中获益。仅仅这两个好处就意味着能够比以前循环更多的周期,这意味着您可以更好的安排为客户提供新功能和价值的节奏。
通过将Klocwork与Incredibuild结合,您可以充分利用Incredibuild的强大计算能力,以及它的分布式编排、云扩展和CI/CD集成能力,这些都与Klocwork的核心功能完美互补。
有了Klocwork和Incredibuild,您可以满怀信心地更快地向市场交付产品。
例如下图中展示了一个实例,说明了您的团队如何从使用Incredibuild和Klocwork中获益。在这个例子中,Klocwork在Incredibuild之上工作,而Incredibuild使用了15个多核CPU,在不到4分钟的时间对一个大型代码库进行了完整的扫描。
7
如何并用Incredibuild与Klocwork
以下是并用Incredibuild与Klocwork的步骤:
1.安装最新版Incredibuild
2.安装Klocwork以下是并用Incredibuild与Klocwork的步骤:
接下来,下载Klocwork。如果还没有使用Klocwork,您可以联系Perforce中国授权合作伙伴龙智免费试用。如果已经是Klocwork用户,请下载最新版本。一旦安装了Klocwork,您将需要Klocwork中的“accessWebAPI”权限。
3.利用Incredibuild生成版本追踪文件
每次执行Incredibuild加速构建时,将在incrediBuild-install-path/temp文件夹中生成有效的JSON版本跟踪文件。该文件将使用以下命名约定来命名:
IbCodeAnalysis_SolutionName_TimeStamp.jso
其中SolutionName是解决方案的名称,TimeStamp是一个定义文件创建时间的值。参见版本跟踪文件格式,以便了解跟踪文件格式的信息,或参见kwinject,以了解如何生成版本规范的详细信息。此外,您可以通过在BuildConsole命令行添加/ca_fie=file-path来指定自己的自定义文件名和路径。例如,/ca_file="C:\MyFile.JSSon"。
4.分配分析
KlocworkServer包中安装了Incredibuild配置文件,位置是:
server_install\config\IBProfile.xml
通过这个Incredibuild配置文件间接运行集成版本分析工具kwbuildproject。将需要的kwbuildproject选项全都纳入:
IBConsole/profile=”server_install\config\IBProfile.xml”/