Java 为什么puppet无法从snapshot repo下载最新版本

Java 为什么puppet无法从snapshot repo下载最新版本,java,maven,jenkins,puppet,mcollective,Java,Maven,Jenkins,Puppet,Mcollective,我们正在使用Puppet和mCollective进行服务器部署。对于我们的dev和test环境,我们将工件(从两个不同的分支)释放到相同的nexus快照repo(我们使用maven分类器来区分dev和test工件)。工件的详细信息如下所示: 开发工件 <groupId>my.group</groupId> <artifactId>my-app</artifactId> <version>1.0-SNAPSHOT</version&

我们正在使用PuppetmCollective进行服务器部署。对于我们的devtest环境,我们将工件(从两个不同的分支)释放到相同的nexus快照repo(我们使用maven
分类器
来区分dev和test工件)。工件的详细信息如下所示:

开发工件

<groupId>my.group</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<classifier>dev</classifier>
<groupId>my.group</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<classifier>test</classifier>
my.group
我的应用程序
1.0-快照
发展
测试工件

<groupId>my.group</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<classifier>dev</classifier>
<groupId>my.group</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<classifier>test</classifier>
my.group
我的应用程序
1.0-快照
测试
这些工件通过两个Jenkins作业发布。对于Puppet/mCollective,我们使用
最新版本
;然而,由于某些原因,它在确定最新的分类时忽略了分类器。我的意思是,让我们假设nexus快照中的repo-dev工件是在2015年7月21日格林威治标准时间下午1点创建的,而测试工件是在格林威治标准时间下午2点创建的。在服务器上,如果我们想要进行开发部署,mCollective代理将从nexusrepo下载测试工件(即使在puppet配置中我们将分类器提供为
dev


我看到一个脚本
从nexus.sh下载工件,我相信它是用来从nexusrepo下载工件的。此脚本使用NexusRESTAPI下载工件。我不知道这些RESTAPI,但我觉得这个脚本没有使用
maven metadata.xml
,它清楚地提到了基于分类器的最新工件。我不熟悉puppet/McCollective,不知道如何解决这个问题。如果有人能提供帮助,我将不胜感激。

这与puppet无关,而与您的shell脚本有关。脚本
从nexus.sh下载工件
不是我的;它是由木偶实验室提供的,是吗?您当时正在使用该模块(尽管锻造厂似乎没有提供该模块)。该脚本不是由Puppet实验室提供的,而是由第三方贡献者提供的。您可能希望向他们提出这个问题。@FelixFrank,是的,也许我从GitHub看到了这个文件,并被误解了。谢谢你的澄清。如果没有这个脚本,你能告诉我Puppet是如何从nexus下载最新的工件的吗?而且,是的,我应该对脚本提供程序提出一个bug。@Niranjan嗯,Puppet对nexus没有本机支持,所以您必须依赖一个模块。从锻造厂可以买到一些。我建议您尝试其中一些,您的里程可能会有所不同。这与puppet无关,而与您的shell脚本有关。脚本
从nexus.sh下载工件不是我的;它是由木偶实验室提供的,是吗?您当时正在使用该模块(尽管锻造厂似乎没有提供该模块)。该脚本不是由Puppet实验室提供的,而是由第三方贡献者提供的。您可能希望向他们提出这个问题。@FelixFrank,是的,也许我从GitHub看到了这个文件,并被误解了。谢谢你的澄清。如果没有这个脚本,你能告诉我Puppet是如何从nexus下载最新的工件的吗?而且,是的,我应该对脚本提供程序提出一个bug。@Niranjan嗯,Puppet对nexus没有本机支持,所以您必须依赖一个模块。从锻造厂可以买到一些。我建议你试试,你的里程可能会有所不同。