From c8a772e5ba601575a758b0a3ef0c6bfbf9e1e01f Mon Sep 17 00:00:00 2001 From: Marcin Grzejszczak Date: Thu, 7 Feb 2019 11:25:07 +0100 Subject: [PATCH] Applied checkstyle rules --- .editorconfig | 8 + .settings.xml | 4 +- .travis.yml | 6 +- docs/pom.xml | 4 +- etc/ide/eclipse-code-formatter.xml | 1045 ++++++++++++----- pom.xml | 9 +- spring-cloud-starter-vault-config/pom.xml | 4 +- spring-cloud-vault-config-aws/pom.xml | 4 +- .../VaultConfigAwsBootstrapConfiguration.java | 22 +- .../vault/config/aws/VaultConfigAwsTests.java | 12 +- spring-cloud-vault-config-consul/pom.xml | 4 +- ...ultConfigConsulBootstrapConfiguration.java | 22 +- .../config/consul/VaultConfigConsulTests.java | 6 +- spring-cloud-vault-config-databases/pom.xml | 4 +- ...tConfigDatabaseBootstrapConfiguration.java | 22 +- .../databases/VaultConfigCassandraTests.java | 18 +- .../databases/VaultConfigMongoTests.java | 18 +- .../VaultConfigMySqlDatabaseTests.java | 18 +- .../databases/VaultConfigMySqlTests.java | 18 +- .../databases/VaultConfigPostgreSqlTests.java | 18 +- .../src/test/resources/cassandra.yaml | 70 +- spring-cloud-vault-config-rabbitmq/pom.xml | 4 +- ...tConfigRabbitMqBootstrapConfiguration.java | 22 +- .../rabbitmq/VaultConfigRabbitMqTests.java | 18 +- spring-cloud-vault-config/pom.xml | 4 +- .../config/ClientAuthenticationFactory.java | 118 +- .../config/KeyValueSecretBackendMetadata.java | 20 +- .../vault/config/SecretBackendFactories.java | 8 +- .../vault/config/VaultConfigurationUtil.java | 8 +- .../cloud/vault/config/VaultProperties.java | 28 +- .../config/VaultReactiveHealthIndicator.java | 22 +- .../config/ReactiveVaultOperationsTests.java | 6 +- .../VaultConfigAppIdCustomMechanismTests.java | 6 +- .../vault/config/VaultConfigAppIdTests.java | 6 +- .../vault/config/VaultConfigAppRoleTests.java | 6 +- ...ultConfigCubbyholeAuthenticationTests.java | 6 +- .../config/VaultConfigDisabledTests.java | 12 +- ...aultConfigGenericBackendDisabledTests.java | 6 +- .../cloud/vault/config/VaultConfigTests.java | 18 +- ...VaultConfigTlsCertAuthenticationTests.java | 6 +- .../config/VaultConfigWithContextTests.java | 6 +- .../VaultConfigWithVaultConfigurerTests.java | 6 +- ...PropertySourceLocatorIntegrationTests.java | 18 +- .../VaultVersionedKvBackendConfigTests.java | 18 +- spring-cloud-vault-dependencies/pom.xml | 6 +- 45 files changed, 1101 insertions(+), 613 deletions(-) diff --git a/.editorconfig b/.editorconfig index a8e2b8c0..52e6a1af 100644 --- a/.editorconfig +++ b/.editorconfig @@ -14,3 +14,11 @@ continuation_indent_size = 8 indent_style = tab indent_size = 4 continuation_indent_size = 8 + +[*.yml] +indent_style = space +indent_size = 2 + +[*.yaml] +indent_style = space +indent_size = 2 \ No newline at end of file diff --git a/.settings.xml b/.settings.xml index 270181b3..514b7e0e 100644 --- a/.settings.xml +++ b/.settings.xml @@ -10,7 +10,9 @@ spring - true + + true + spring-snapshots diff --git a/.travis.yml b/.travis.yml index 592db45d..0d584e99 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,10 +9,10 @@ services: addons: apt: sources: - - mongodb-3.0-precise + - mongodb-3.0-precise packages: - - mongodb-org-server - - mongodb-org-shell + - mongodb-org-server + - mongodb-org-shell jdk: - oraclejdk8 diff --git a/docs/pom.xml b/docs/pom.xml index e95d37c0..499349ff 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -1,5 +1,7 @@ - + 4.0.0 diff --git a/etc/ide/eclipse-code-formatter.xml b/etc/ide/eclipse-code-formatter.xml index 6f7bc030..24955522 100644 --- a/etc/ide/eclipse-code-formatter.xml +++ b/etc/ide/eclipse-code-formatter.xml @@ -1,296 +1,755 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/pom.xml b/pom.xml index 044e7ce2..1526ebec 100644 --- a/pom.xml +++ b/pom.xml @@ -1,5 +1,6 @@ - 4.0.0 @@ -47,8 +48,10 @@ 4.1.30.Final 3.10.0 - v1-rev259-1.25.0 - 0.10.0 + v1-rev259-1.25.0 + + 0.10.0 + diff --git a/spring-cloud-starter-vault-config/pom.xml b/spring-cloud-starter-vault-config/pom.xml index 1b2d226d..5e191bcc 100644 --- a/spring-cloud-starter-vault-config/pom.xml +++ b/spring-cloud-starter-vault-config/pom.xml @@ -1,5 +1,7 @@ - + 4.0.0 diff --git a/spring-cloud-vault-config-aws/pom.xml b/spring-cloud-vault-config-aws/pom.xml index 3d6e37af..6947fb48 100644 --- a/spring-cloud-vault-config-aws/pom.xml +++ b/spring-cloud-vault-config-aws/pom.xml @@ -1,5 +1,7 @@ - + 4.0.0 diff --git a/spring-cloud-vault-config-aws/src/main/java/org/springframework/cloud/vault/config/aws/VaultConfigAwsBootstrapConfiguration.java b/spring-cloud-vault-config-aws/src/main/java/org/springframework/cloud/vault/config/aws/VaultConfigAwsBootstrapConfiguration.java index ff22b8aa..fad373a0 100644 --- a/spring-cloud-vault-config-aws/src/main/java/org/springframework/cloud/vault/config/aws/VaultConfigAwsBootstrapConfiguration.java +++ b/spring-cloud-vault-config-aws/src/main/java/org/springframework/cloud/vault/config/aws/VaultConfigAwsBootstrapConfiguration.java @@ -52,17 +52,6 @@ public class VaultConfigAwsBootstrapConfiguration { public static class AwsSecretBackendMetadataFactory implements SecretBackendMetadataFactory { - @Override - public SecretBackendMetadata createMetadata( - VaultAwsProperties backendDescriptor) { - return forAws(backendDescriptor); - } - - @Override - public boolean supports(VaultSecretBackendDescriptor backendDescriptor) { - return backendDescriptor instanceof VaultAwsProperties; - } - /** * Creates {@link SecretBackendMetadata} for a secret backend using * {@link VaultAwsProperties}. This accessor transforms Vault's username/password @@ -114,6 +103,17 @@ public class VaultConfigAwsBootstrapConfiguration { }; } + @Override + public SecretBackendMetadata createMetadata( + VaultAwsProperties backendDescriptor) { + return forAws(backendDescriptor); + } + + @Override + public boolean supports(VaultSecretBackendDescriptor backendDescriptor) { + return backendDescriptor instanceof VaultAwsProperties; + } + } } diff --git a/spring-cloud-vault-config-aws/src/test/java/org/springframework/cloud/vault/config/aws/VaultConfigAwsTests.java b/spring-cloud-vault-config-aws/src/test/java/org/springframework/cloud/vault/config/aws/VaultConfigAwsTests.java index ca756c3c..ed6bb96b 100644 --- a/spring-cloud-vault-config-aws/src/test/java/org/springframework/cloud/vault/config/aws/VaultConfigAwsTests.java +++ b/spring-cloud-vault-config-aws/src/test/java/org/springframework/cloud/vault/config/aws/VaultConfigAwsTests.java @@ -63,6 +63,12 @@ public class VaultConfigAwsTests { private static final String ARN = "arn:aws:iam::aws:policy/ReadOnlyAccess"; + @Value("${cloud.aws.credentials.accessKey}") + String accessKey; + + @Value("${cloud.aws.credentials.secretKey}") + String secretKey; + /** * Initialize the aws secret backend. */ @@ -91,12 +97,6 @@ public class VaultConfigAwsTests { vaultOperations.write("aws/roles/readonly", Collections.singletonMap("arn", ARN)); } - @Value("${cloud.aws.credentials.accessKey}") - String accessKey; - - @Value("${cloud.aws.credentials.secretKey}") - String secretKey; - @Test public void shouldInitializeAwsProperties() { diff --git a/spring-cloud-vault-config-consul/pom.xml b/spring-cloud-vault-config-consul/pom.xml index 1e410a0c..2187836e 100644 --- a/spring-cloud-vault-config-consul/pom.xml +++ b/spring-cloud-vault-config-consul/pom.xml @@ -1,5 +1,7 @@ - + 4.0.0 diff --git a/spring-cloud-vault-config-consul/src/main/java/org/springframework/cloud/vault/config/consul/VaultConfigConsulBootstrapConfiguration.java b/spring-cloud-vault-config-consul/src/main/java/org/springframework/cloud/vault/config/consul/VaultConfigConsulBootstrapConfiguration.java index 1645eca4..432e1221 100644 --- a/spring-cloud-vault-config-consul/src/main/java/org/springframework/cloud/vault/config/consul/VaultConfigConsulBootstrapConfiguration.java +++ b/spring-cloud-vault-config-consul/src/main/java/org/springframework/cloud/vault/config/consul/VaultConfigConsulBootstrapConfiguration.java @@ -52,17 +52,6 @@ public class VaultConfigConsulBootstrapConfiguration { public static class ConsulSecretBackendMetadataFactory implements SecretBackendMetadataFactory { - @Override - public SecretBackendMetadata createMetadata( - VaultConsulProperties backendDescriptor) { - return forConsul(backendDescriptor); - } - - @Override - public boolean supports(VaultSecretBackendDescriptor backendDescriptor) { - return backendDescriptor instanceof VaultConsulProperties; - } - /** * Creates a {@link SecretBackendMetadata} for a secret backend using * {@link VaultConsulProperties}. This accessor transforms Vault's token property @@ -109,6 +98,17 @@ public class VaultConfigConsulBootstrapConfiguration { }; } + @Override + public SecretBackendMetadata createMetadata( + VaultConsulProperties backendDescriptor) { + return forConsul(backendDescriptor); + } + + @Override + public boolean supports(VaultSecretBackendDescriptor backendDescriptor) { + return backendDescriptor instanceof VaultConsulProperties; + } + } } diff --git a/spring-cloud-vault-config-consul/src/test/java/org/springframework/cloud/vault/config/consul/VaultConfigConsulTests.java b/spring-cloud-vault-config-consul/src/test/java/org/springframework/cloud/vault/config/consul/VaultConfigConsulTests.java index bdc22904..5123740f 100644 --- a/spring-cloud-vault-config-consul/src/test/java/org/springframework/cloud/vault/config/consul/VaultConfigConsulTests.java +++ b/spring-cloud-vault-config-consul/src/test/java/org/springframework/cloud/vault/config/consul/VaultConfigConsulTests.java @@ -74,6 +74,9 @@ public class VaultConfigConsulTests { private static final ParameterizedTypeReference> STRING_MAP = new ParameterizedTypeReference>() { }; + @Value("${spring.cloud.consul.token}") + String token; + /** * Initialize the consul secret backend. */ @@ -120,9 +123,6 @@ public class VaultConfigConsulTests { } } - @Value("${spring.cloud.consul.token}") - String token; - @Test public void shouldHaveToken() { assertThat(this.token).isNotEmpty(); diff --git a/spring-cloud-vault-config-databases/pom.xml b/spring-cloud-vault-config-databases/pom.xml index f7f40e2d..3b82e87b 100644 --- a/spring-cloud-vault-config-databases/pom.xml +++ b/spring-cloud-vault-config-databases/pom.xml @@ -1,5 +1,7 @@ - + 4.0.0 diff --git a/spring-cloud-vault-config-databases/src/main/java/org/springframework/cloud/vault/config/databases/VaultConfigDatabaseBootstrapConfiguration.java b/spring-cloud-vault-config-databases/src/main/java/org/springframework/cloud/vault/config/databases/VaultConfigDatabaseBootstrapConfiguration.java index a5e1f8bd..1a906982 100644 --- a/spring-cloud-vault-config-databases/src/main/java/org/springframework/cloud/vault/config/databases/VaultConfigDatabaseBootstrapConfiguration.java +++ b/spring-cloud-vault-config-databases/src/main/java/org/springframework/cloud/vault/config/databases/VaultConfigDatabaseBootstrapConfiguration.java @@ -56,17 +56,6 @@ public class VaultConfigDatabaseBootstrapConfiguration { public static class DatabaseSecretBackendMetadataFactory implements SecretBackendMetadataFactory { - @Override - public SecretBackendMetadata createMetadata( - DatabaseSecretProperties backendDescriptor) { - return forDatabase(backendDescriptor); - } - - @Override - public boolean supports(VaultSecretBackendDescriptor backendDescriptor) { - return backendDescriptor instanceof DatabaseSecretProperties; - } - /** * Creates a {@link SecretBackendMetadata} for a secret backend using * {@link DatabaseSecretProperties}. This accessor transforms Vault's @@ -117,6 +106,17 @@ public class VaultConfigDatabaseBootstrapConfiguration { }; } + @Override + public SecretBackendMetadata createMetadata( + DatabaseSecretProperties backendDescriptor) { + return forDatabase(backendDescriptor); + } + + @Override + public boolean supports(VaultSecretBackendDescriptor backendDescriptor) { + return backendDescriptor instanceof DatabaseSecretProperties; + } + } } diff --git a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigCassandraTests.java b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigCassandraTests.java index 0338b54a..566f13eb 100644 --- a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigCassandraTests.java +++ b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigCassandraTests.java @@ -66,6 +66,15 @@ public class VaultConfigCassandraTests { private static final String CREATE_USER_AND_GRANT_CQL = "CREATE USER '{{username}}' WITH PASSWORD '{{password}}' NOSUPERUSER;" + "GRANT SELECT ON ALL KEYSPACES TO {{username}};"; + @Value("${spring.data.cassandra.username}") + String username; + + @Value("${spring.data.cassandra.password}") + String password; + + @Autowired + Cluster cluster; + /** * Initialize the cassandra secret backend. */ @@ -99,15 +108,6 @@ public class VaultConfigCassandraTests { vaultOperations.write("cassandra/roles/readonly", role); } - @Value("${spring.data.cassandra.username}") - String username; - - @Value("${spring.data.cassandra.password}") - String password; - - @Autowired - Cluster cluster; - @Test public void shouldConnectUsingCluster() { this.cluster.connect().close(); diff --git a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMongoTests.java b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMongoTests.java index f3de025b..b88fce75 100644 --- a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMongoTests.java +++ b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMongoTests.java @@ -69,6 +69,15 @@ public class VaultConfigMongoTests { private static final String ROLES = "[ \"readWrite\", { \"role\": \"read\", \"db\": \"admin\" } ]"; + @Value("${spring.data.mongodb.username}") + String username; + + @Value("${spring.data.mongodb.password}") + String password; + + @Autowired + MongoClient mongoClient; + /** * Initialize the mongo secret backend. */ @@ -99,15 +108,6 @@ public class VaultConfigMongoTests { vaultOperations.write("mongodb/roles/readonly", role); } - @Value("${spring.data.mongodb.username}") - String username; - - @Value("${spring.data.mongodb.password}") - String password; - - @Autowired - MongoClient mongoClient; - @Test public void shouldConnectUsingDataSource() { diff --git a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMySqlDatabaseTests.java b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMySqlDatabaseTests.java index a7e61d6a..8af194f9 100644 --- a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMySqlDatabaseTests.java +++ b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMySqlDatabaseTests.java @@ -67,6 +67,15 @@ public class VaultConfigMySqlDatabaseTests { private static final String CREATE_USER_AND_GRANT_SQL = "CREATE USER '{{name}}'@'%' IDENTIFIED BY '{{password}}';" + "GRANT SELECT ON *.* TO '{{name}}'@'%';"; + @Value("${spring.datasource.username}") + String username; + + @Value("${spring.datasource.password}") + String password; + + @Autowired + DataSource dataSource; + /** * Initialize the mysql secret backend. */ @@ -100,15 +109,6 @@ public class VaultConfigMySqlDatabaseTests { vaultOperations.write("database/roles/readonly", body); } - @Value("${spring.datasource.username}") - String username; - - @Value("${spring.datasource.password}") - String password; - - @Autowired - DataSource dataSource; - @Test public void shouldConnectUsingDataSource() throws SQLException { diff --git a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMySqlTests.java b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMySqlTests.java index 87391dee..31d4d27a 100644 --- a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMySqlTests.java +++ b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigMySqlTests.java @@ -64,6 +64,15 @@ public class VaultConfigMySqlTests { private static final String CREATE_USER_AND_GRANT_SQL = "CREATE USER '{{name}}'@'%' IDENTIFIED BY '{{password}}';" + "GRANT SELECT ON *.* TO '{{name}}'@'%';"; + @Value("${spring.datasource.username}") + String username; + + @Value("${spring.datasource.password}") + String password; + + @Autowired + DataSource dataSource; + /** * Initialize the mysql secret backend. */ @@ -88,15 +97,6 @@ public class VaultConfigMySqlTests { Collections.singletonMap("sql", CREATE_USER_AND_GRANT_SQL)); } - @Value("${spring.datasource.username}") - String username; - - @Value("${spring.datasource.password}") - String password; - - @Autowired - DataSource dataSource; - @Test public void shouldConnectUsingDataSource() throws SQLException { diff --git a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigPostgreSqlTests.java b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigPostgreSqlTests.java index b0775e5b..7ccf7486 100644 --- a/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigPostgreSqlTests.java +++ b/spring-cloud-vault-config-databases/src/test/java/org/springframework/cloud/vault/config/databases/VaultConfigPostgreSqlTests.java @@ -69,6 +69,15 @@ public class VaultConfigPostgreSqlTests { + "LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\n" + "GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";"; + @Value("${spring.datasource.username}") + String username; + + @Value("${spring.datasource.password}") + String password; + + @Autowired + DataSource dataSource; + /** * Initialize the postgresql secret backend. */ @@ -93,15 +102,6 @@ public class VaultConfigPostgreSqlTests { Collections.singletonMap("sql", CREATE_USER_AND_GRANT_SQL)); } - @Value("${spring.datasource.username}") - String username; - - @Value("${spring.datasource.password}") - String password; - - @Autowired - DataSource dataSource; - @Test public void shouldConnectUsingDataSource() throws SQLException { diff --git a/spring-cloud-vault-config-databases/src/test/resources/cassandra.yaml b/spring-cloud-vault-config-databases/src/test/resources/cassandra.yaml index 0a1ccf88..9930e807 100644 --- a/spring-cloud-vault-config-databases/src/test/resources/cassandra.yaml +++ b/spring-cloud-vault-config-databases/src/test/resources/cassandra.yaml @@ -293,15 +293,15 @@ commitlog_segment_size_in_mb: 32 # any class that implements the SeedProvider interface and has a # constructor that takes a Map of parameters will do. seed_provider: - # Addresses of hosts that are deemed contact points. - # Cassandra nodes use this list of hosts to find each other and learn - # the topology of the ring. You must change this if you are running - # multiple nodes! - - class_name: org.apache.cassandra.locator.SimpleSeedProvider - parameters: - # seeds is actually a comma-delimited list of addresses. - # Ex: ",," - - seeds: "127.0.0.1" + # Addresses of hosts that are deemed contact points. + # Cassandra nodes use this list of hosts to find each other and learn + # the topology of the ring. You must change this if you are running + # multiple nodes! + - class_name: org.apache.cassandra.locator.SimpleSeedProvider + parameters: + # seeds is actually a comma-delimited list of addresses. + # Ex: ",," + - seeds: "127.0.0.1" # For workloads with more data than can fit in memory, Cassandra's # bottleneck will be reads that need to fetch data from @@ -741,7 +741,7 @@ endpoint_snitch: SimpleSnitch # controls how often to perform the more expensive part of host score # calculation -dynamic_snitch_update_interval_in_ms: 100 +dynamic_snitch_update_interval_in_ms: 100 # controls how often to reset all host scores, allowing a bad host to # possibly recover dynamic_snitch_reset_interval_in_ms: 600000 @@ -810,34 +810,34 @@ request_scheduler: org.apache.cassandra.scheduler.NoScheduler # http://download.oracle.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html#CreateKeystore # server_encryption_options: - internode_encryption: none - keystore: conf/.keystore - keystore_password: cassandra - truststore: conf/.truststore - truststore_password: cassandra - # More advanced defaults below: - # protocol: TLS - # algorithm: SunX509 - # store_type: JKS - # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA] - # require_client_auth: false + internode_encryption: none + keystore: conf/.keystore + keystore_password: cassandra + truststore: conf/.truststore + truststore_password: cassandra + # More advanced defaults below: + # protocol: TLS + # algorithm: SunX509 + # store_type: JKS + # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA] + # require_client_auth: false # enable or disable client/server encryption. client_encryption_options: - enabled: false - # If enabled and optional is set to true encrypted and unencrypted connections are handled. - optional: false - keystore: conf/.keystore - keystore_password: cassandra - # require_client_auth: false - # Set trustore and truststore_password if require_client_auth is true - # truststore: conf/.truststore - # truststore_password: cassandra - # More advanced defaults below: - # protocol: TLS - # algorithm: SunX509 - # store_type: JKS - # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA] + enabled: false + # If enabled and optional is set to true encrypted and unencrypted connections are handled. + optional: false + keystore: conf/.keystore + keystore_password: cassandra + # require_client_auth: false + # Set trustore and truststore_password if require_client_auth is true + # truststore: conf/.truststore + # truststore_password: cassandra + # More advanced defaults below: + # protocol: TLS + # algorithm: SunX509 + # store_type: JKS + # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA] # internode_compression controls whether traffic between nodes is # compressed. diff --git a/spring-cloud-vault-config-rabbitmq/pom.xml b/spring-cloud-vault-config-rabbitmq/pom.xml index 0eedec67..d44d3dc3 100644 --- a/spring-cloud-vault-config-rabbitmq/pom.xml +++ b/spring-cloud-vault-config-rabbitmq/pom.xml @@ -1,5 +1,7 @@ - + 4.0.0 diff --git a/spring-cloud-vault-config-rabbitmq/src/main/java/org/springframework/cloud/vault/config/rabbitmq/VaultConfigRabbitMqBootstrapConfiguration.java b/spring-cloud-vault-config-rabbitmq/src/main/java/org/springframework/cloud/vault/config/rabbitmq/VaultConfigRabbitMqBootstrapConfiguration.java index fae3412c..aa613a22 100644 --- a/spring-cloud-vault-config-rabbitmq/src/main/java/org/springframework/cloud/vault/config/rabbitmq/VaultConfigRabbitMqBootstrapConfiguration.java +++ b/spring-cloud-vault-config-rabbitmq/src/main/java/org/springframework/cloud/vault/config/rabbitmq/VaultConfigRabbitMqBootstrapConfiguration.java @@ -57,17 +57,6 @@ public class VaultConfigRabbitMqBootstrapConfiguration { public static class RabbitMqSecretBackendMetadataFactory implements SecretBackendMetadataFactory { - @Override - public SecretBackendMetadata createMetadata( - VaultRabbitMqProperties backendDescriptor) { - return forRabbitMq(backendDescriptor); - } - - @Override - public boolean supports(VaultSecretBackendDescriptor backendDescriptor) { - return backendDescriptor instanceof VaultRabbitMqProperties; - } - /** * Creates a {@link SecretBackendMetadata} for a secret backend using * {@link VaultRabbitMqProperties}. This accessor transforms Vault's @@ -120,6 +109,17 @@ public class VaultConfigRabbitMqBootstrapConfiguration { }; } + @Override + public SecretBackendMetadata createMetadata( + VaultRabbitMqProperties backendDescriptor) { + return forRabbitMq(backendDescriptor); + } + + @Override + public boolean supports(VaultSecretBackendDescriptor backendDescriptor) { + return backendDescriptor instanceof VaultRabbitMqProperties; + } + } } diff --git a/spring-cloud-vault-config-rabbitmq/src/test/java/org/springframework/cloud/vault/config/rabbitmq/VaultConfigRabbitMqTests.java b/spring-cloud-vault-config-rabbitmq/src/test/java/org/springframework/cloud/vault/config/rabbitmq/VaultConfigRabbitMqTests.java index a0e261a9..67627b6b 100644 --- a/spring-cloud-vault-config-rabbitmq/src/test/java/org/springframework/cloud/vault/config/rabbitmq/VaultConfigRabbitMqTests.java +++ b/spring-cloud-vault-config-rabbitmq/src/test/java/org/springframework/cloud/vault/config/rabbitmq/VaultConfigRabbitMqTests.java @@ -70,6 +70,15 @@ public class VaultConfigRabbitMqTests { private static final String VHOSTS_ROLE = "{\"/\":{\"write\": \".*\", \"read\": \".*\"}}"; + @Value("${spring.rabbitmq.username}") + String username; + + @Value("${spring.rabbitmq.password}") + String password; + + @Autowired + org.springframework.amqp.rabbit.connection.ConnectionFactory connectionFactory; + /** * Initialize the rabbitmq secret backend. */ @@ -102,15 +111,6 @@ public class VaultConfigRabbitMqTests { Collections.singletonMap("vhosts", VHOSTS_ROLE)); } - @Value("${spring.rabbitmq.username}") - String username; - - @Value("${spring.rabbitmq.password}") - String password; - - @Autowired - org.springframework.amqp.rabbit.connection.ConnectionFactory connectionFactory; - @Test public void shouldConnectSpringConnectionFactory() { this.connectionFactory.createConnection().close(); diff --git a/spring-cloud-vault-config/pom.xml b/spring-cloud-vault-config/pom.xml index c2fd7685..958501da 100644 --- a/spring-cloud-vault-config/pom.xml +++ b/spring-cloud-vault-config/pom.xml @@ -1,5 +1,7 @@ - + 4.0.0 diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/ClientAuthenticationFactory.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/ClientAuthenticationFactory.java index c906a97e..7e8fe77f 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/ClientAuthenticationFactory.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/ClientAuthenticationFactory.java @@ -94,6 +94,65 @@ class ClientAuthenticationFactory { private final RestOperations externalRestOperations; + static AppRoleAuthenticationOptions getAppRoleAuthenticationOptions( + VaultProperties vaultProperties) { + + AppRoleProperties appRole = vaultProperties.getAppRole(); + + AppRoleAuthenticationOptionsBuilder builder = AppRoleAuthenticationOptions + .builder().path(appRole.getAppRolePath()); + + if (StringUtils.hasText(appRole.getRole())) { + builder.appRole(appRole.getRole()); + } + + RoleId roleId = getRoleId(vaultProperties, appRole); + SecretId secretId = getSecretId(vaultProperties, appRole); + + builder.roleId(roleId).secretId(secretId); + + return builder.build(); + } + + private static RoleId getRoleId(VaultProperties vaultProperties, + AppRoleProperties appRole) { + + if (StringUtils.hasText(appRole.getRoleId())) { + return RoleId.provided(appRole.getRoleId()); + } + + if (StringUtils.hasText(vaultProperties.getToken()) + && StringUtils.hasText(appRole.getRole())) { + return RoleId.pull(VaultToken.of(vaultProperties.getToken())); + } + + if (StringUtils.hasText(vaultProperties.getToken())) { + return RoleId.wrapped(VaultToken.of(vaultProperties.getToken())); + } + + throw new IllegalArgumentException( + "Cannot configure RoleId. Any of role-id, initial token, or initial toke and role name must be configured."); + } + + private static SecretId getSecretId(VaultProperties vaultProperties, + AppRoleProperties appRole) { + + if (StringUtils.hasText(appRole.getSecretId())) { + return SecretId.provided(appRole.getSecretId()); + } + + if (StringUtils.hasText(vaultProperties.getToken()) + && StringUtils.hasText(appRole.getRole())) { + return SecretId.pull(VaultToken.of(vaultProperties.getToken())); + } + + if (StringUtils.hasText(vaultProperties.getToken())) { + return SecretId.wrapped(VaultToken.of(vaultProperties.getToken())); + } + + return SecretId.absent(); + } + /** * @return a new {@link ClientAuthentication}. */ @@ -197,65 +256,6 @@ class ClientAuthenticationFactory { return new AppRoleAuthentication(options, this.restOperations); } - static AppRoleAuthenticationOptions getAppRoleAuthenticationOptions( - VaultProperties vaultProperties) { - - AppRoleProperties appRole = vaultProperties.getAppRole(); - - AppRoleAuthenticationOptionsBuilder builder = AppRoleAuthenticationOptions - .builder().path(appRole.getAppRolePath()); - - if (StringUtils.hasText(appRole.getRole())) { - builder.appRole(appRole.getRole()); - } - - RoleId roleId = getRoleId(vaultProperties, appRole); - SecretId secretId = getSecretId(vaultProperties, appRole); - - builder.roleId(roleId).secretId(secretId); - - return builder.build(); - } - - private static RoleId getRoleId(VaultProperties vaultProperties, - AppRoleProperties appRole) { - - if (StringUtils.hasText(appRole.getRoleId())) { - return RoleId.provided(appRole.getRoleId()); - } - - if (StringUtils.hasText(vaultProperties.getToken()) - && StringUtils.hasText(appRole.getRole())) { - return RoleId.pull(VaultToken.of(vaultProperties.getToken())); - } - - if (StringUtils.hasText(vaultProperties.getToken())) { - return RoleId.wrapped(VaultToken.of(vaultProperties.getToken())); - } - - throw new IllegalArgumentException( - "Cannot configure RoleId. Any of role-id, initial token, or initial toke and role name must be configured."); - } - - private static SecretId getSecretId(VaultProperties vaultProperties, - AppRoleProperties appRole) { - - if (StringUtils.hasText(appRole.getSecretId())) { - return SecretId.provided(appRole.getSecretId()); - } - - if (StringUtils.hasText(vaultProperties.getToken()) - && StringUtils.hasText(appRole.getRole())) { - return SecretId.pull(VaultToken.of(vaultProperties.getToken())); - } - - if (StringUtils.hasText(vaultProperties.getToken())) { - return SecretId.wrapped(VaultToken.of(vaultProperties.getToken())); - } - - return SecretId.absent(); - } - private ClientAuthentication awsEc2Authentication(VaultProperties vaultProperties) { VaultProperties.AwsEc2Properties awsEc2 = vaultProperties.getAwsEc2(); diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/KeyValueSecretBackendMetadata.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/KeyValueSecretBackendMetadata.java index bae5c288..dacd8d6f 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/KeyValueSecretBackendMetadata.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/KeyValueSecretBackendMetadata.java @@ -102,16 +102,6 @@ public class KeyValueSecretBackendMetadata extends SecretBackendMetadataSupport return new KeyValueSecretBackendMetadata(path, propertyTransformer); } - @Override - public String getPath() { - return this.path; - } - - @Override - public PropertyTransformer getPropertyTransformer() { - return this.propertyTransformer; - } - /** * Build a list of context paths from application name and the active profile names. * Application name and profiles support multiple (comma-separated) values. @@ -180,6 +170,16 @@ public class KeyValueSecretBackendMetadata extends SecretBackendMetadataSupport return contexts; } + @Override + public String getPath() { + return this.path; + } + + @Override + public PropertyTransformer getPropertyTransformer() { + return this.propertyTransformer; + } + /** * {@link PropertyTransformer} that strips a prefix from property names. */ diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/SecretBackendFactories.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/SecretBackendFactories.java index 0355336e..3b574082 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/SecretBackendFactories.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/SecretBackendFactories.java @@ -31,6 +31,10 @@ import lombok.extern.apachecommons.CommonsLog; @CommonsLog final class SecretBackendFactories { + private SecretBackendFactories() { + + } + static Collection createSecretBackendMetadata( Collection vaultSecretBackendDescriptors, Collection> factories) { @@ -73,8 +77,4 @@ final class SecretBackendFactories { return accessor; } - private SecretBackendFactories() { - - } - } diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultConfigurationUtil.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultConfigurationUtil.java index 20f63d8f..60c182da 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultConfigurationUtil.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultConfigurationUtil.java @@ -32,6 +32,10 @@ import org.springframework.vault.support.SslConfiguration.KeyStoreConfiguration; */ final class VaultConfigurationUtil { + private VaultConfigurationUtil() { + + } + /** * Create a {@link SslConfiguration} given {@link Ssl SSL properties}. * @param ssl the SSL properties. @@ -89,8 +93,4 @@ final class VaultConfigurationUtil { return vaultEndpoint; } - private VaultConfigurationUtil() { - - } - } diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultProperties.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultProperties.java index da057051..42f3275c 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultProperties.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultProperties.java @@ -130,6 +130,15 @@ public class VaultProperties implements EnvironmentAware { } } + /** + * Enumeration of authentication methods. + */ + public enum AuthenticationMethod { + + TOKEN, APPID, APPROLE, AWS_EC2, AWS_IAM, AZURE_MSI, CERT, CUBBYHOLE, GCP_GCE, GCP_IAM, KUBERNETES + + } + /** * Discovery properties. */ @@ -329,6 +338,11 @@ public class VaultProperties implements EnvironmentAware { @Data public static class GcpIamProperties { + /** + * Credentials configuration. + */ + private final GcpCredentials credentials = new GcpCredentials(); + /** * Mount path of the Kubernetes authentication backend. */ @@ -355,11 +369,6 @@ public class VaultProperties implements EnvironmentAware { */ private Duration jwtValidity = Duration.ofMinutes(15); - /** - * Credentials configuration. - */ - private final GcpCredentials credentials = new GcpCredentials(); - } /** @@ -476,13 +485,4 @@ public class VaultProperties implements EnvironmentAware { } - /** - * Enumeration of authentication methods. - */ - public enum AuthenticationMethod { - - TOKEN, APPID, APPROLE, AWS_EC2, AWS_IAM, AZURE_MSI, CERT, CUBBYHOLE, GCP_GCE, GCP_IAM, KUBERNETES - - } - } diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultReactiveHealthIndicator.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultReactiveHealthIndicator.java index 3a9fa55d..d73f55a1 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultReactiveHealthIndicator.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultReactiveHealthIndicator.java @@ -47,17 +47,6 @@ public class VaultReactiveHealthIndicator extends AbstractReactiveHealthIndicato this.vaultOperations = vaultOperations; } - @Override - protected Mono doHealthCheck(Builder builder) { - - return this.vaultOperations - .doWithSession((it) -> it.get().uri("sys/health").exchange()) - .flatMap((it) -> it.bodyToMono(VaultHealthImpl.class)) - .onErrorResume(WebClientResponseException.class, - VaultReactiveHealthIndicator::deserializeError) - .map((vaultHealthResponse) -> getHealth(builder, vaultHealthResponse)); - } - private static Mono deserializeError( WebClientResponseException e) { @@ -99,6 +88,17 @@ public class VaultReactiveHealthIndicator extends AbstractReactiveHealthIndicato return builder.build(); } + @Override + protected Mono doHealthCheck(Builder builder) { + + return this.vaultOperations + .doWithSession((it) -> it.get().uri("sys/health").exchange()) + .flatMap((it) -> it.bodyToMono(VaultHealthImpl.class)) + .onErrorResume(WebClientResponseException.class, + VaultReactiveHealthIndicator::deserializeError) + .map((vaultHealthResponse) -> getHealth(builder, vaultHealthResponse)); + } + @Data @JsonIgnoreProperties(ignoreUnknown = true) private static final class VaultHealthImpl implements VaultHealth { diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/ReactiveVaultOperationsTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/ReactiveVaultOperationsTests.java index bbb0b7d2..1653951b 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/ReactiveVaultOperationsTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/ReactiveVaultOperationsTests.java @@ -50,6 +50,9 @@ import static org.assertj.core.api.Assertions.assertThat; "spring.cloud.vault.host=foo", "spring.cloud.vault.uri=https://localhost:8200", }) public class ReactiveVaultOperationsTests { + @Autowired + ReactiveVaultOperations reactiveOperations; + @BeforeClass public static void beforeClass() { @@ -63,9 +66,6 @@ public class ReactiveVaultOperationsTests { vaultRule.prepare().getVaultOperations().write("secret/testVaultApp", object); } - @Autowired - ReactiveVaultOperations reactiveOperations; - @Test public void shouldAccessVault() { diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppIdCustomMechanismTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppIdCustomMechanismTests.java index a461e777..c7bcfbdb 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppIdCustomMechanismTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppIdCustomMechanismTests.java @@ -56,6 +56,9 @@ import static org.assertj.core.api.Assertions.assertThat; "spring.main.allow-bean-definition-overriding=true" }) public class VaultConfigAppIdCustomMechanismTests { + @Value("${vault.value}") + String configValue; + @BeforeClass public static void beforeClass() { @@ -102,9 +105,6 @@ public class VaultConfigAppIdCustomMechanismTests { userIdData); } - @Value("${vault.value}") - String configValue; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo(getClass().getSimpleName()); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppIdTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppIdTests.java index 781796ad..b8aef377 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppIdTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppIdTests.java @@ -55,6 +55,9 @@ import static org.assertj.core.api.Assertions.assertThat; // https://github.com/spring-cloud/spring-cloud-commons/issues/214 public class VaultConfigAppIdTests { + @Value("${vault.value}") + String configValue; + @BeforeClass public static void beforeClass() { @@ -102,9 +105,6 @@ public class VaultConfigAppIdTests { userIdData); } - @Value("${vault.value}") - String configValue; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo("foo"); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppRoleTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppRoleTests.java index 0c004c1f..2c2394cb 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppRoleTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigAppRoleTests.java @@ -55,6 +55,9 @@ import static org.junit.Assume.assumeTrue; // https://github.com/spring-cloud/spring-cloud-commons/issues/214 public class VaultConfigAppRoleTests { + @Value("${vault.value}") + String configValue; + @BeforeClass public static void beforeClass() { @@ -106,9 +109,6 @@ public class VaultConfigAppRoleTests { } - @Value("${vault.value}") - String configValue; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo("foo"); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigCubbyholeAuthenticationTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigCubbyholeAuthenticationTests.java index 39587a68..5ed252c0 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigCubbyholeAuthenticationTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigCubbyholeAuthenticationTests.java @@ -54,6 +54,9 @@ import static org.junit.Assume.assumeTrue; "spring.cloud.vault.generic.applicationName=VaultConfigCubbyholeAuthenticationTests" }) public class VaultConfigCubbyholeAuthenticationTests { + @Value("${vault.value}") + String configValue; + @BeforeClass public static void beforeClass() { @@ -88,9 +91,6 @@ public class VaultConfigCubbyholeAuthenticationTests { System.clearProperty("spring.cloud.vault.token"); } - @Value("${vault.value}") - String configValue; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo(getClass().getSimpleName()); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigDisabledTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigDisabledTests.java index e56c179f..6ccff454 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigDisabledTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigDisabledTests.java @@ -48,6 +48,12 @@ import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest(classes = VaultConfigDisabledTests.TestApplication.class, properties = "spring.cloud.vault.enabled=false") public class VaultConfigDisabledTests { + @Autowired + Environment environment; + + @Autowired + ApplicationContext applicationContext; + @BeforeClass public static void beforeClass() { @@ -58,12 +64,6 @@ public class VaultConfigDisabledTests { Collections.singletonMap("vault.value", "foo")); } - @Autowired - Environment environment; - - @Autowired - ApplicationContext applicationContext; - @Test public void shouldNotContainVaultProperties() { assertThat(this.environment.containsProperty("vault.value")).isFalse(); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigGenericBackendDisabledTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigGenericBackendDisabledTests.java index 3a8fe54b..7772bdb6 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigGenericBackendDisabledTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigGenericBackendDisabledTests.java @@ -46,6 +46,9 @@ import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest(classes = VaultConfigGenericBackendDisabledTests.TestApplication.class, properties = "spring.cloud.vault.generic.enabled=false") public class VaultConfigGenericBackendDisabledTests { + @Autowired + Environment environment; + @BeforeClass public static void beforeClass() { @@ -56,9 +59,6 @@ public class VaultConfigGenericBackendDisabledTests { Collections.singletonMap("vault.value", "foo")); } - @Autowired - Environment environment; - @Test public void shouldNotContainVaultProperties() { assertThat(this.environment.containsProperty("vault.value")).isFalse(); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigTests.java index 9827f0f2..ff857ac8 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigTests.java @@ -58,6 +58,15 @@ import static org.assertj.core.api.Assertions.assertThat; // https://github.com/spring-cloud/spring-cloud-commons/issues/214 public class VaultConfigTests { + @Value("${vault.value}") + String configValue; + + @Autowired + Environment environment; + + @Autowired + ApplicationContext applicationContext; + @BeforeClass public static void beforeClass() { @@ -71,15 +80,6 @@ public class VaultConfigTests { vaultRule.prepare().getVaultOperations().write("secret/testVaultApp", object); } - @Value("${vault.value}") - String configValue; - - @Autowired - Environment environment; - - @Autowired - ApplicationContext applicationContext; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo("foo"); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigTlsCertAuthenticationTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigTlsCertAuthenticationTests.java index 9d94894b..fc121b63 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigTlsCertAuthenticationTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigTlsCertAuthenticationTests.java @@ -56,6 +56,9 @@ import static org.springframework.cloud.vault.util.Settings.findWorkDir; "spring.cloud.vault.reactive.enabled=false" }) public class VaultConfigTlsCertAuthenticationTests { + @Value("${vault.value}") + String configValue; + @BeforeClass public static void beforeClass() { @@ -95,9 +98,6 @@ public class VaultConfigTlsCertAuthenticationTests { vaultOperations.write("auth/cert/certs/my-role", role); } - @Value("${vault.value}") - String configValue; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo("foo"); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigWithContextTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigWithContextTests.java index cd007ac8..b0affd03 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigWithContextTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigWithContextTests.java @@ -50,6 +50,9 @@ import static org.assertj.core.api.Assertions.assertThat; @ActiveProfiles("my-profile") public class VaultConfigWithContextTests { + @Value("${vault.value}") + String configValue; + @BeforeClass public static void beforeClass() { @@ -65,9 +68,6 @@ public class VaultConfigWithContextTests { Collections.singletonMap("vault.value", "world")); } - @Value("${vault.value}") - String configValue; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo("hello"); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigWithVaultConfigurerTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigWithVaultConfigurerTests.java index 46e70517..985ac788 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigWithVaultConfigurerTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultConfigWithVaultConfigurerTests.java @@ -48,6 +48,9 @@ import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest(classes = VaultConfigWithVaultConfigurerTests.TestApplication.class, properties = "VaultConfigWithVaultConfigurerTests.custom.config=true") public class VaultConfigWithVaultConfigurerTests { + @Value("${vault.value}") + String configValue; + @BeforeClass public static void beforeClass() { @@ -63,9 +66,6 @@ public class VaultConfigWithVaultConfigurerTests { Collections.singletonMap("vault.value", "world")); } - @Value("${vault.value}") - String configValue; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo("hello"); diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultPropertySourceLocatorIntegrationTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultPropertySourceLocatorIntegrationTests.java index bc1f6024..7906a9cb 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultPropertySourceLocatorIntegrationTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultPropertySourceLocatorIntegrationTests.java @@ -47,10 +47,11 @@ import static org.assertj.core.api.Assertions.assertThat; @ActiveProfiles({ "integrationtest" }) public class VaultPropertySourceLocatorIntegrationTests extends IntegrationTestSupport { - @SpringBootApplication - public static class TestApplication { + @Value("${vault.value}") + String configValue; - } + @Value("${icebreaker.value}") + String additionalValue; @BeforeClass public static void beforeClass() { @@ -76,12 +77,6 @@ public class VaultPropertySourceLocatorIntegrationTests extends IntegrationTestS "icebreaker.value", "additional context:integrationtest value")); } - @Value("${vault.value}") - String configValue; - - @Value("${icebreaker.value}") - String additionalValue; - @Test public void getsSecretFromVaultUsingVaultApplicationName() { assertThat(this.configValue) @@ -94,4 +89,9 @@ public class VaultPropertySourceLocatorIntegrationTests extends IntegrationTestS .isEqualTo("additional context:integrationtest value"); } + @SpringBootApplication + public static class TestApplication { + + } + } diff --git a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultVersionedKvBackendConfigTests.java b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultVersionedKvBackendConfigTests.java index cdbb53ab..b6f88820 100644 --- a/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultVersionedKvBackendConfigTests.java +++ b/spring-cloud-vault-config/src/test/java/org/springframework/cloud/vault/config/VaultVersionedKvBackendConfigTests.java @@ -60,6 +60,15 @@ import static org.junit.Assume.assumeTrue; "spring.cloud.vault.application-name=testVaultApp" }) public class VaultVersionedKvBackendConfigTests { + @Value("${vault.value}") + String configValue; + + @Autowired + Environment environment; + + @Autowired + ApplicationContext applicationContext; + @BeforeClass public static void beforeClass() { @@ -77,15 +86,6 @@ public class VaultVersionedKvBackendConfigTests { Collections.singletonMap("data", object)); } - @Value("${vault.value}") - String configValue; - - @Autowired - Environment environment; - - @Autowired - ApplicationContext applicationContext; - @Test public void contextLoads() { assertThat(this.configValue).isEqualTo("foo"); diff --git a/spring-cloud-vault-dependencies/pom.xml b/spring-cloud-vault-dependencies/pom.xml index 07454d9f..4770604a 100644 --- a/spring-cloud-vault-dependencies/pom.xml +++ b/spring-cloud-vault-dependencies/pom.xml @@ -1,12 +1,14 @@ - + 4.0.0 org.springframework.cloud spring-cloud-dependencies-parent 2.1.2.BUILD-SNAPSHOT - +