Azure devops Azure DevOps(内部部署)|配置构建过程和;Nexus存储库的Docker映像创建

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内部部署中提交代码后,我想配置一

我是Azure DevOps&Nexus存储库的新主题。 我的代码在Azure DevOps内部部署上提交。Azure DevOps和Azure注册表的工作方式也很好

但是现在我正在努力解决配置Nexus,我需要这个教程吗

如果是,我从何处获取此属性的信息:

  • 存储库Id
  • 组Id
  • 工件Id
  • 工件版本
因为这些属性是配置所需的。 在我和我的Nexus同事交谈后,他是说它看起来像Maven配置

那么,也许这条路错了

总结我想要实现的目标:

在Azure DevOps内部部署中提交代码后,我想配置一个构建过程,创建一个docker映像,将其移动到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。

否,没有错

我们已经在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嗨,结果如何?你能成功地实现你想要的一切吗?这张票上还有什么谜题吗?请随意在这里提问。