Jenkins Maven Nexus,怎么学呢?
Jenkins Maven Nexus, how to learn it?
任务:我负责 make/test CI Jenkins 中任何 Java(最好是 Maven)源的管道(所有 Devops 工具必须在 Docker 容器中) .我需要做基本阶段:
1) 从 github 获取源代码 - 完成(我通过在 Jenkins 中创建任务来完成
并使用了一些 github 存储库中的示例 java 应用)
2) 在 Maven 中构建 - 完成
3) 进行 Junit 测试 - 完成
4) 将工件(可能是 .war 文件)推送到 Nexus 3 存储库 - 需要
解决
我如何尝试解决:我找到了 docker-ci-tool-stack("Devops-ready" 平台:Jenkins、SonarQube、Nexus,Git Lab) ,所以我只是将它用于我的目的(这里是 https://github.com/marcelbirkner/docker-ci-tool-stack)首先,我试图从该 repo 中了解构建应用程序示例,但卡在 Groove DSL 脚本中。在我尝试查看一些教程、有关集成的文档之后:Jenkins、Maven 和 Nexus,但这对我来说是不可理解的。我同意,我应该分别拥有每个工具,然后将它们组合在一起(并可能在其他地方工作),但我有老板的条款......我该怎么办?
我通过了 Linux Academy 的 Git、Docker 和 Jenkins 的一些课程,但我在实践中仍然觉得 DevOps (CI/CD) 很生疏,
谢谢。
嗯,你可以试试别的方法。我可以说是非 maven 方式,就像使用 nexus artifact uploader plugin 一样。如果您使用的是 jenkins 管道,那么在语法生成器中有针对它的步骤。参考图片
here groupid and version can be any value i chose this random values in repository pass the name of repo that you created in nexus dashboardwH.png
artifactid and classifier can be any value. in the type write war if its war file , jar if its jar or zip if its zip file; Then in File section pass the path of war file which was created after creating the build
When you click generate buld you will get this step script just paste it after the step where war file has been build
您可以通过将 distributionManagement 部分添加到 pom.xml 文件来完成此操作。
<project ...>
...
<distributionManagement>
<snapshotRepository>
<id>nexus-snapshots</id>
<url>http://your-host:8081/repository/maven-snapshots/</url>
</snapshotRepository>
<repository>
<id>nexus-releases</id>
<url>http://your-host:8081/repository/maven-releases/</url>
</repository>
</distributionManagement>
</project>
并将 Jenkins 作业添加到 Maven(mvn) 部分:
deploy
简述:
- Infrastructure with maven, Jenkins, Nexus
此处有更多详细信息:
任务:我负责 make/test CI Jenkins 中任何 Java(最好是 Maven)源的管道(所有 Devops 工具必须在 Docker 容器中) .我需要做基本阶段:
1) 从 github 获取源代码 - 完成(我通过在 Jenkins 中创建任务来完成 并使用了一些 github 存储库中的示例 java 应用)
2) 在 Maven 中构建 - 完成
3) 进行 Junit 测试 - 完成
4) 将工件(可能是 .war 文件)推送到 Nexus 3 存储库 - 需要 解决
我如何尝试解决:我找到了 docker-ci-tool-stack("Devops-ready" 平台:Jenkins、SonarQube、Nexus,Git Lab) ,所以我只是将它用于我的目的(这里是 https://github.com/marcelbirkner/docker-ci-tool-stack)首先,我试图从该 repo 中了解构建应用程序示例,但卡在 Groove DSL 脚本中。在我尝试查看一些教程、有关集成的文档之后:Jenkins、Maven 和 Nexus,但这对我来说是不可理解的。我同意,我应该分别拥有每个工具,然后将它们组合在一起(并可能在其他地方工作),但我有老板的条款......我该怎么办? 我通过了 Linux Academy 的 Git、Docker 和 Jenkins 的一些课程,但我在实践中仍然觉得 DevOps (CI/CD) 很生疏, 谢谢。
嗯,你可以试试别的方法。我可以说是非 maven 方式,就像使用 nexus artifact uploader plugin 一样。如果您使用的是 jenkins 管道,那么在语法生成器中有针对它的步骤。参考图片
here groupid and version can be any value i chose this random values in repository pass the name of repo that you created in nexus dashboardwH.png artifactid and classifier can be any value. in the type write war if its war file , jar if its jar or zip if its zip file; Then in File section pass the path of war file which was created after creating the build When you click generate buld you will get this step script just paste it after the step where war file has been build
您可以通过将 distributionManagement 部分添加到 pom.xml 文件来完成此操作。
<project ...>
...
<distributionManagement>
<snapshotRepository>
<id>nexus-snapshots</id>
<url>http://your-host:8081/repository/maven-snapshots/</url>
</snapshotRepository>
<repository>
<id>nexus-releases</id>
<url>http://your-host:8081/repository/maven-releases/</url>
</repository>
</distributionManagement>
</project>
并将 Jenkins 作业添加到 Maven(mvn) 部分:
deploy
简述:
- Infrastructure with maven, Jenkins, Nexus
此处有更多详细信息: