@Override protected S3PersistentStore editPersistentStore(S3PersistentStore persistentStore) { if(isSet(bucket) && bucket.startsWith("s3://")){ bucket = bucket.substring(5); //Line to edit out the "s3://" part of the bucket string } persistentStore.setBucket(isSet(bucket) ? bucket : persistentStore.getBucket()); persistentStore.setRootFolder(isSet(rootFolder) ? rootFolder : persistentStore.getRootFolder()); persistentStore.setRegion(isSet(region) ? region : persistentStore.getRegion()); persistentStore.setEndpoint(isSet(endpoint) ? endpoint : persistentStore.getEndpoint()); persistentStore.setAccessKeyId(isSet(accessKeyId) ? accessKeyId : persistentStore.getAccessKeyId()); persistentStore.setSecretAccessKey(isSet(secretAccessKey) ? secretAccessKey : persistentStore.getSecretAccessKey()); if (persistentStore.getBucket() == null) { String bucketName = "spin-" + UUID.randomUUID().toString(); AnsiUi.raw("Generated bucket name: " + bucketName); persistentStore.setBucket(bucketName); } return persistentStore; } }
@Override public void validate(ConfigProblemSetBuilder ps, S3PersistentStore n) { if (!StringUtils.isEmpty(n.getEndpoint())) { return; } try { AWSCredentialsProvider credentialsProvider = AwsAccountValidator.getAwsCredentialsProvider(n.getAccessKeyId(), n.getSecretAccessKey()); S3Config s3Config = new S3Config(); S3Properties s3Properties = new S3Properties(); s3Properties.setBucket(n.getBucket()); s3Properties.setRootFolder(n.getRootFolder()); s3Properties.setRegion(n.getRegion()); AmazonS3 s3Client = s3Config.awsS3Client(credentialsProvider, s3Properties); new S3Config().s3StorageService(s3Client, s3Properties); } catch (Exception e) { ps.addProblem(Problem.Severity.ERROR, "Failed to ensure the required bucket \"" + n.getBucket() + "\" exists: " + e.getMessage()); } } }
protected Optional<Profile> generateAwsProfile(DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints, String spinnakerHome) { String name = "aws/front50-credentials" + spinnakerHome.replace("/", "_"); PersistentStore.PersistentStoreType type = deploymentConfiguration.getPersistentStorage().getPersistentStoreType(); S3PersistentStore store = deploymentConfiguration.getPersistentStorage().getS3(); if (type == PersistentStore.PersistentStoreType.S3 && !StringUtils.isEmpty(store.getAccessKeyId()) && !StringUtils.isEmpty(store.getSecretAccessKey())) { String outputFile = awsCredentialsProfileFactoryBuilder.getOutputFile(spinnakerHome); return Optional.of(awsCredentialsProfileFactoryBuilder .setArtifact(SpinnakerArtifact.FRONT50) .setAccessKeyId(store.getAccessKeyId()) .setSecretAccessKey(store.getSecretAccessKey()) .build() .getProfile(name, outputFile, deploymentConfiguration, endpoints)); } else { return Optional.empty(); } }
@Override public void validate(ConfigProblemSetBuilder ps, S3PersistentStore n) { if (!StringUtils.isEmpty(n.getEndpoint())) { return; } try { AWSCredentialsProvider credentialsProvider = AwsAccountValidator.getAwsCredentialsProvider(n.getAccessKeyId(), n.getSecretAccessKey()); S3Config s3Config = new S3Config(); S3Properties s3Properties = new S3Properties(); s3Properties.setBucket(n.getBucket()); s3Properties.setRootFolder(n.getRootFolder()); s3Properties.setRegion(n.getRegion()); AmazonS3 s3Client = s3Config.awsS3Client(credentialsProvider, s3Properties); new S3Config().s3StorageService(s3Client, s3Properties); } catch (Exception e) { ps.addProblem(Problem.Severity.ERROR, "Failed to ensure the required bucket \"" + n.getBucket() + "\" exists: " + e.getMessage()); } } }
protected Optional<Profile> generateAwsProfile(DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints, String spinnakerHome) { String name = "aws/front50-credentials" + spinnakerHome.replace("/", "_"); PersistentStore.PersistentStoreType type = deploymentConfiguration.getPersistentStorage().getPersistentStoreType(); S3PersistentStore store = deploymentConfiguration.getPersistentStorage().getS3(); if (type == PersistentStore.PersistentStoreType.S3 && !StringUtils.isEmpty(store.getAccessKeyId()) && !StringUtils.isEmpty(store.getSecretAccessKey())) { String outputFile = awsCredentialsProfileFactoryBuilder.getOutputFile(spinnakerHome); return Optional.of(awsCredentialsProfileFactoryBuilder .setArtifact(SpinnakerArtifact.FRONT50) .setAccessKeyId(store.getAccessKeyId()) .setSecretAccessKey(store.getSecretAccessKey()) .build() .getProfile(name, outputFile, deploymentConfiguration, endpoints)); } else { return Optional.empty(); } }
@Override protected S3PersistentStore editPersistentStore(S3PersistentStore persistentStore) { if(isSet(bucket) && bucket.startsWith("s3://")){ bucket = bucket.substring(5); //Line to edit out the "s3://" part of the bucket string } persistentStore.setBucket(isSet(bucket) ? bucket : persistentStore.getBucket()); persistentStore.setRootFolder(isSet(rootFolder) ? rootFolder : persistentStore.getRootFolder()); persistentStore.setRegion(isSet(region) ? region : persistentStore.getRegion()); persistentStore.setEndpoint(isSet(endpoint) ? endpoint : persistentStore.getEndpoint()); persistentStore.setAccessKeyId(isSet(accessKeyId) ? accessKeyId : persistentStore.getAccessKeyId()); persistentStore.setSecretAccessKey(isSet(secretAccessKey) ? secretAccessKey : persistentStore.getSecretAccessKey()); if (persistentStore.getBucket() == null) { String bucketName = "spin-" + UUID.randomUUID().toString(); AnsiUi.raw("Generated bucket name: " + bucketName); persistentStore.setBucket(bucketName); } return persistentStore; } }