in aws-core-server/src/main/java/jetbrains/buildServer/clouds/amazon/connector/featureDevelopment/credsToAgent/InjectAwsCredentialsToTheBuildContext.java [38:62]
public void updateParameters(@NotNull BuildStartContext context) {
Collection<SBuildFeatureDescriptor> awsCredentialsBuildFeatures = AwsConnToAgentBuildFeature.getAwsConnectionsToExpose(context.getBuild());
if (!awsCredentialsBuildFeatures.isEmpty()) {
Loggers.CLOUD.debug(String.format("Build with id: <%s> has AWS Connection to inject, looking for AWS Connection...", context.getBuild().getBuildId()));
try {
validateMultipleAwsCredentialsBuildFeatures(awsCredentialsBuildFeatures);
List<ConnectionCredentials> linkedAwsConnectionCredentials = myLinkedAwsConnectionProvider.getConnectionCredentialsFromBuild(context.getBuild());
if (linkedAwsConnectionCredentials.isEmpty()) {
finishBuildWithProblem(context, "Cannot access AWS connection(s) used in this build via AWS Credentials Build Feature. Check connection(s) settings and ensure they are shared with child subprojects and/or available for build steps.");
return;
}
for (ConnectionCredentials connectionCredentials : linkedAwsConnectionCredentials) {
String awsProfileName = connectionCredentials.getProperties().get(AWS_PROFILE_NAME_PARAM);
myAwsCredentialsInjector.injectCredentials(context, new AwsConnectionCredentials(connectionCredentials), awsProfileName);
}
} catch (ConnectionCredentialsException e) {
String warningMessage = "Failed to inject AWS Connection to a build: " + e.getMessage();
Loggers.CLOUD.warnAndDebugDetails(warningMessage, e);
finishBuildWithProblem(context, warningMessage);
}
}
}