Q1。持续集成是什么意思?
我将建议您通过对持续集成(CI)进行小的定义来开始此答案。这是一种开发实践,要求开发人员每天多次将代码集成到共享存储库中。然后,每个签入均由自动构建进行验证,从而使团队能够及早发现问题。
我建议您说明您在上一份工作中是如何实施的。您可以参考以下给出的示例:
在上图所示的图中:
- 开发人员将代码检出到其专用工作区中。
- 完成后,将更改提交到共享存储库(版本控制存储库)。
- CI服务器监视存储库,并在发生更改时签出更改。
- 然后,CI服务器提取这些更改并构建系统,并运行单元测试和集成测试。
- CI服务器现在将通知团队成功的构建。
- 如果构建或测试失败,则CI服务器将警告团队。
- 该小组将尽早解决此问题。
- 这个过程不断重复。
Q2。为什么需要开发与测试的持续集成?
对于此答案,您应重点关注持续集成的需求。我的建议是在您的答案中提及以下解释:
开发和测试的持续集成通过在完成所有开发后替换传统的测试实践,提高了软件的质量,并缩短了交付软件的时间。由于开发人员需要每天(多次)将代码集成到共享存储库中,因此开发团队可以轻松地及早发现并定位问题。然后将自动测试每个签入。
Q3。持续集成的成功因素是什么?
在这里,您必须提及持续集成的要求。您可以在回答中包括以下几点:
- 维护代码库
- 自动化构建
- 使构建自检
- 每个人每天都致力于基线
- 每次提交(到基线)都应该构建
- 保持快速构建
- 在生产环境的克隆中进行测试
- 轻松获取最新交付物
- 每个人都可以看到最新版本的结果
- 自动化部署
Q4。解释如何将Jenkins从一台服务器移动或复制到另一台服务器?
我将通过将作业目录从旧服务器复制到新服务器来完成此任务。有多种方法可以做到这一点。我在下面提到了它们:
您可以:
- 只需复制相应的作业目录,即可将作业从一个Jenkins安装移至另一安装。
- 通过使用不同的名称克隆作业目录来复制现有作业。
- 通过重命名目录来重命名现有作业。请注意,如果您更改作业名称,则将需要更改任何其他尝试调用重命名作业的作业。
Q5。解释如何在Jenkins中创建备份和复制文件?
这个问题的答案确实是直接的。要创建备份,您需要做的就是定期备份JENKINS_HOME目录。这包含所有构建作业配置,从属节点配置以及构建历史记录。要创建您的Jenkins设置的备份,只需复制此目录。您还可以复制作业目录以克隆或复制作业或重命名目录。
Q6。解释如何设置Jenkins工作?
我要回答这个问题的方法是首先提到如何创建Jenkins工作。转到Jenkins主页,选择“新建作业”,然后选择“构建自由样式的软件项目”。
然后,您可以说出此自由式作业的元素:
- 源代码所在的可选SCM,例如CVS或Subversion。
- 可选触发器,用于控制Jenkins何时执行构建。
- 某种执行实际工作的构建脚本(ant,maven,shell脚本,批处理文件等)。
- 从构建中收集信息的可选步骤,例如,归档工件和/或记录javadoc和测试结果。
- 通知其他人员/系统构建结果的可选步骤,例如发送电子邮件,IM,更新问题跟踪器等。
Q7。在Jenkins中提及一些有用的插件。
下面,我提到了一些重要的插件:
- Maven 2 project
- Amazon EC2
- HTML publisher
- Copy artifact
- Join
- Green Balls
我觉得这些插件是最有用的插件。如果要包括上面未提及的任何其他插件,也可以添加它们。但是,请确保首先提及上述插件,然后添加您自己的插件。
Q8。您将如何保护Jenkins?
下面提到我保护Jenkins的方法。如果您还有其他方法,请在下面的评论部分中提及:
- 确保启用全局安全性。
- 确保使用适当的插件将Jenkins与我公司的用户目录集成。
- 确保已启用矩阵/项目矩阵以微调访问。
- 使用自定义版本控制脚本在Jenkins中自动设置权限/特权的过程。
- 限制对Jenkins数据/文件夹的物理访问。
- 定期对其进行安全审核。