maven s3 货车提供商

问题描述 投票:0回答:5

如何与wagon s3提供商一起部署?

我发现了几个插件,其中大多数都不完整,其中一些没有维护。还有一个来自官方 maven SVN 存储库的沙箱插件,但我正在考虑如何使用它。

有什么提示吗?

java maven-2 amazon-s3
5个回答
13
投票

spring 有一个较新的 s3 提供程序可以运行:

<build>
    <extensions>
        <extension>
            <groupId>org.springframework.build.aws</groupId>
            <artifactId>org.springframework.build.aws.maven</artifactId>
            <version>3.0.0.RELEASE</version>
        </extension>
    </extensions>
</build>

如果您想在 maven 3 中使用它,您需要在 settings.xml 中加密您的密码。

分步说明位于此处


12
投票

这辆车是我们用来部署到 S3 的。它与Spring类似,但具有多线程上传支持。

这使得 CI 服务器可以非常快速地将大量 Maven 内容推送到 S3。 (约 50 秒内 22k 文件和 400mb 内容)

https://github.com/jcaddel/maven-s3-wagon

<build>
 <extensions>
   <extension>
    <groupId>org.kuali.maven.wagons</groupId>
    <artifactId>maven-s3-wagon</artifactId>
    <version>1.2.1</version>
   </extension>
 </extensions>
</build>

2
投票

另一种选择:

<build>
  <extensions>
    <extension>
      <groupId>org.cyclopsgroup</groupId>
      <artifactId>awss3-maven-wagon</artifactId>
      <version>0.1</version>
    </extension>
  </extensions>
  [...]
</build>

然后在

settings.xml

<servers>
  <server>
    <id>foo.s3</id>
    <username>AKIAJ.......OLVBA</username>
    <password>PsndORui..............KGZtDpeIYjsA/</password>
  </server>
</servers>

然后在你的

pom.xml

<distributionManagement>
  <repository>
    <id>foo</id>
    <url>s3://foo.s3/</url>
  </repository>
</distributionManagement>

应该可以。


0
投票

另一个选项是 jcaddel 插件的一个分支,最后更新于 2016 年 3 月,但对我有用:

<extension>
    <groupId>co.axiomzen.maven.wagons</groupId>
    <artifactId>maven-s3-wagon</artifactId>
    <version>1.2.6</version>
</extension>

看起来主要的弱点是:旧的AWS SDK版本,不使用默认的AWS凭证链,因此缺乏对ECS凭证等内容的支持。另外,URL 中的“@”和“:”等字符未正确编码,但我不确定这是 wagon 还是 Maven 的问题。


0
投票

我制作了一个支持使用第二版 SDK 的 AWS SSO(OIDC 身份验证)的产品。也许它对你也有用。

https://github.com/embriq-nordic/aws-oidc-s3-maven-wagon

<extension>
    <groupId>io.github.embriq-nordic</groupId>
    <artifactId>aws-oidc-s3-maven-wagon</artifactId>
    <version>1.1.0</version>
</extension>

由于它使用第二个版本的 SDK,因此它使用该版本所使用的凭证提供程序链。

© www.soinside.com 2019 - 2024. All rights reserved.