public void beforeRunnerStart()

in aws-core-agent/src/main/java/jetbrains/buildServer/clouds/amazon/connector/AwsCredentialsHandler.java [83:111]


  public void beforeRunnerStart(@NotNull BuildRunnerContext runner) {
    if (myCredentialsData == null) {
      return;
    }

    runner.getBuild().getBuildLogger().logMessage(DefaultMessagesInfo.createTextMessage("Creating a file with AWS Credentials..."));
    try {
      final File awsCredentialsFile = createFileInTempDirectory(runner.getBuild());

      try (FileOutputStream os = new FileOutputStream(awsCredentialsFile)) {
        os.write(myCredentialsData);
      }
      runner.getBuild().getBuildLogger().logMessage(DefaultMessagesInfo.createTextMessage("Created the AWS Credentials file"));

      setAwsProfileNameEnvVarForSingleConnectionOnly(runner);

      runner.addEnvironmentVariable(
        AwsConnBuildFeatureParams.AWS_SHARED_CREDENTIALS_FILE_ENV,
        awsCredentialsFile.getAbsolutePath()
      );
      runner.getBuild().getBuildLogger().logMessage(DefaultMessagesInfo.createTextMessage(
        String.format("Added Environment Variable <%s> which points to the AWS Credentials file", AwsConnBuildFeatureParams.AWS_SHARED_CREDENTIALS_FILE_ENV)));

    } catch (Exception e) {
      String msg = "Failed to create temporary file for AWS credentials, reason: " + e.getMessage();
      LOG.warn(msg, e);
      runner.getBuild().getBuildLogger().warning(msg);
    }
  }