Azure devops Azure DevOps(内部部署)|配置构建过程和;Nexus存储库的Docker映像创建
我是Azure DevOps&Nexus存储库的新主题。 我的代码在Azure DevOps内部部署上提交。Azure DevOps和Azure注册表的工作方式也很好 但是现在我正在努力解决配置Nexus,我需要这个教程吗 如果是,我从何处获取此属性的信息:Azure devops Azure DevOps(内部部署)|配置构建过程和;Nexus存储库的Docker映像创建,azure-devops,nexus,azure-devops-extensions,Azure Devops,Nexus,Azure Devops Extensions,我是Azure DevOps&Nexus存储库的新主题。 我的代码在Azure DevOps内部部署上提交。Azure DevOps和Azure注册表的工作方式也很好 但是现在我正在努力解决配置Nexus,我需要这个教程吗 如果是,我从何处获取此属性的信息: 存储库Id 组Id 工件Id 工件版本 因为这些属性是配置所需的。 在我和我的Nexus同事交谈后,他是说它看起来像Maven配置 那么,也许这条路错了 总结我想要实现的目标: 在Azure DevOps内部部署中提交代码后,我想配置一
- 存储库Id
- 组Id
- 工件Id
- 工件版本
https://local:8081/service/local/artifact/maven/content?r={xx}&g={xx}&a={xx}&v={xx}&p={xx}&c={xx}" > xxx.jar
在这个URI中,r
是repositoryId
,g
是groupId
,a
是artifactId
,v
是artifactVersion
,c
是分类器
,p
是打包
。这就是为什么您的同事认为它看起来像Maven配置,因为我们使用这个API作为扩展逻辑
请参阅此脚本文件:
这是脚本的简短部分。您可以清楚地了解扩展使用的API及其参数
因此,这个扩展和任务没有错,只是它的逻辑使用了Nexus2.xapi
但是,到目前为止,您需要注意这个扩展只支持Nexus2.x。如果您使用的是Nexus3.x,那么最好使用Maven pom.xml文件通过Nexus的Maven支持将工件上传到Nexus
由于您需要构建一个docker映像,然后将其上载到Nexus,因此您可以使用docker任务构建docker映像,然后使用此任务或Maven将此映像上载到Nexus。否,没有错
我们已经在Github中打开了此扩展的源代码,请参阅此repos
在进行代码分析之前,我们需要了解它的逻辑。在此扩展中,我们使用Nexus 2.x Rest API实现了将文件上载到Nexus Repository Manager的功能,该URI为:
https://local:8081/service/local/artifact/maven/content?r={xx}&g={xx}&a={xx}&v={xx}&p={xx}&c={xx}" > xxx.jar
在这个URI中,r
是repositoryId
,g
是groupId
,a
是artifactId
,v
是artifactVersion
,c
是分类器
,p
是打包
。这就是为什么您的同事认为它看起来像Maven配置,因为我们使用这个API作为扩展逻辑
请参阅此脚本文件:
这是脚本的简短部分。您可以清楚地了解扩展使用的API及其参数
因此,这个扩展和任务没有错,只是它的逻辑使用了Nexus2.xapi
但是,到目前为止,您需要注意这个扩展只支持Nexus2.x。如果您使用的是Nexus3.x,那么最好使用Maven pom.xml文件通过Nexus的Maven支持将工件上传到Nexus
由于您需要构建一个docker映像,然后将其上载到Nexus,因此您可以使用docker任务构建docker映像,然后使用此任务或Maven将此映像上载到Nexus。您好,现在情况如何?答案能解决你的问题吗?如果是,您可以这样做,以便其他用户能够看到该解决方案是否有效。如果你仍然面临一些问题,请留下评论,这样我们仍然可以帮助你。嗨,事情进展如何?答案能解决你的问题吗?如果是,您可以这样做,以便其他用户能够看到该解决方案是否有效。如果你仍然面临一些问题,请留下评论,这样我们仍然可以帮助你。Liang-MSFT:谢谢分享你的知识。::)我将检查并尝试。欢迎:-)您还可以尝试使用Nexus3.xapi来推送映像:
curl-v-fr={repostory}-fe={extension}-fg={groupid}-fa={artifactid}-fv={version}-fp={packaging}-F file={file path}-u{username}:{password}http://localhost:8081/repository/{repostory}/
@Unknown嗨,结果如何?你能成功地实现你想要的一切吗?这张票上还有什么谜题吗?梁-MSFT:谢谢你分享你的知识我将检查并尝试。欢迎:-)您还可以尝试使用Nexus3.xapi来推送映像:curl-v-fr={repostory}-fe={extension}-fg={groupid}-fa={artifactid}-fv={version}-fp={packaging}-F file={file path}-u{username}:{password}http://localhost:8081/repository/{repostory}/
@Unknown嗨,结果如何?你能成功地实现你想要的一切吗?这张票上还有什么谜题吗?请随意在这里提问。