根据Gradle的文档(示例50.27),我们可以在Gradle 2.4中使用S3支持的Maven存储库。但是,文档中给出的唯一示例将显式的AWS凭证传递给S3存储库声明:
repositories {
maven {
url "s3://someS3Bucket/maven2"
credentials(AwsCredentials) {
accessKey "someKey"
secretKey "someSecret"
}
}
}
我需要做同样的事情,但是我希望Gradle使用来自AWS JDK的DefaultAWSCredentialsProviderChain,而不是显式凭据。就像是:
repositories {
maven {
url "s3://someS3Bucket/maven2"
credentials(AwsCredentials) {
// Default AWS chain here?
}
}
}
这样,它将找到我为要运行Gradle构建的EC2实例配置的实例配置文件凭据。
有没有办法做到这一点?或者,Gradle是否仅能够使用构建文件中提供的显式凭据针对S3进行身份验证?
Gradle的最新版本提供了一种内置方法来使用默认提供程序链中的凭据,例如:
maven {
url "s3://myCompanyBucket/maven2"
authentication {
awsIm(AwsImAuthentication) // load from EC2 role or env var
}
}
这样避免了手动创建提供者链实例并传递凭据值的需要。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句