Skip to content

Commit 21e3c54

Browse files
authored
misc: collect artifact size metrics for private repos (#88)
1 parent e263cc4 commit 21e3c54

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

build-plugins/build-support/src/main/kotlin/aws/sdk/kotlin/gradle/plugins/artifactsizemetrics/CollectDelegatedArtifactSizeMetrics.kt

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,19 @@ internal abstract class CollectDelegatedArtifactSizeMetrics : DefaultTask() {
4949
}
5050

5151
private fun getFileKeys(identifier: String): List<String>? = runBlocking {
52-
S3Client.fromEnvironment().use { s3 ->
53-
return@runBlocking s3.listObjects {
54-
bucket = S3_ARTIFACT_SIZE_METRICS_BUCKET
55-
prefix = pluginConfig.bucketPrefixOverride ?: "[TEMP]${pluginConfig.projectRepositoryName}-$identifier-"
56-
}.contents?.map {
57-
it.key ?: throw AwsSdkGradleException("A file from the artifact size metrics bucket is missing a key")
52+
val prefixes = pluginConfig.bucketPrefixOverride?.let { listOf(it) } ?: listOf(
53+
"[TEMP]${pluginConfig.projectRepositoryName}-$identifier-",
54+
"[TEMP]private-${pluginConfig.projectRepositoryName}-staging-$identifier-", // private repo metrics files have different prefix
55+
)
56+
57+
return@runBlocking prefixes.firstNotNullOfOrNull { prefix ->
58+
S3Client.fromEnvironment().use { s3 ->
59+
s3.listObjects {
60+
bucket = S3_ARTIFACT_SIZE_METRICS_BUCKET
61+
this.prefix = prefix
62+
}.contents?.map {
63+
it.key ?: throw AwsSdkGradleException("A file from the artifact size metrics bucket is missing a key")
64+
}
5865
}
5966
}
6067
}

0 commit comments

Comments
 (0)