1

我已经按照此处的说明配置了一个 S3 支持的 Maven 存储库,例如:

repositories {
    maven {
        url "s3://myCompanyBucket/maven2"
        authentication {
           awsIm(AwsImAuthentication) // load from EC2 role or env var
        }
    }
}

我正在尝试将我的脚本转换为使用 Kotlin DSL 而不是 groovy,但无法找出等效的代码,特别是对于该authentication部分。

与上面的 Groovy 代码段等效的 Kotlin DSL 是什么?

4

2 回答 2

3

我只是设法通过以下方式配置了 HttpHeaderAuthentication :

maven {
    credentials(HttpHeaderCredentials::class.java) {
        name = "Private-Token"
        value = "xxxxxxx"
    }
    authentication {
        val header by registering(HttpHeaderAuthentication::class)
    }
    url = uri("https://xxxxxxxx/")
}

所以我想你的应该是这样的

repositories {
  maven {
    url = uri("s3://myCompanyBucket/maven2")
    authentication {
       val awsIm by registering(AwsImAuthentication::class) // load from EC2 role or env var
    }
  }
}

高温高压

于 2018-09-29T07:34:02.873 回答
1

我能够让它像这样工作:

maven {
    url = uri("s3://$repoBucketName/release")
    authentication {
        register("awsIm", AwsImAuthentication::class)
    }
}

至少没有来自未使用变量的警告。=)

于 2020-03-30T20:24:14.070 回答