容器化、云、CI/CD
https://www.edureka.co/blog/interview-questions/top-devops-interview-questions-2016/
【jenkins】
jenkins就那些嘛,按代码扫描、编译、测试、报告之类的各阶段理一理,基本上各种常用的开源工具都有插件集成的
【插件】
Job Generator Plugin, 对于大团队来说,整个持续集成流程应该类似,不同的项目的区别主要就是代码分支等。该插件可以让团队的配置管理员为整个团队定义一个参数化的模板,项目开发人员可以通过这个模板快速的在 Jenkins 上创建出任务。
Performance Plugin, JUnit/JMeter,
【jenkins MAVEN插件】
maven的代码扫描:checkstyle、findbugs、pmd、覆盖率cobertura
checkstyle
Checkstyle 是 SourceForge 的开源项目,通过检查对代码编码格式,命名约定,Javadoc,类设计等方面进行代码规范和风格的检查,从而有效约束开发人员更好地遵循代码编写规范。FindBugs
FindBugs 是由马里兰大学提供的一款开源 Java 静态代码分析工具。基于Bug Patterns概念,查找javabytecode(.class文件)中的潜在bugpmd
PMD 是由 DARPA 在 SourceForge 上发布的开源 Java 代码静态分析工具。主要分析java源文件有没有潜在的bug,重复的代码,多度复杂的表达式等等。
在Jenkins的Build中设置clean package findbugs:findbugs checkstyle:checkstyle pmd:pmd
- Conventions (Checkstyle)
- Bad practices (PMD)
- Potential bugs (FindBugs)
并在构建设置中选中
Publish Checkstyle analysis results
Publish FindBugs analysis results
Publish PMD analysis results
Sonar是代码质量管理平台,它提供了插件扩展机制,可以支持PMD、FindBug、checkstyle、cobertura等,对于Java项目默认执行CheckStyle, FindBugs以及PMD检测,同时也对检测结果进行存储,然后提供了可视化的面板,可以查看相关趋势。
cobertura config in maven
<project>
...
<reporting>
<plugins>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.7</version>
</plugin>
</plugins>
</reporting>
</project>