Compare commits

...

1 Commits

Author SHA1 Message Date
Ali Oezyetimoglu
2d6fee072b RED-7175: renamed indexName to indexPrefix 2023-09-06 19:08:05 +02:00
8 changed files with 24 additions and 20 deletions

View File

@ -82,7 +82,7 @@ tasks.named<BootBuildImage>("bootBuildImage") {
dependencies { dependencies {
implementation("com.knecon.fforesight:keycloak-commons:0.20.0") implementation("com.knecon.fforesight:keycloak-commons:0.21.0")
implementation("com.knecon.fforesight:swagger-commons:0.5.0") implementation("com.knecon.fforesight:swagger-commons:0.5.0")
implementation("org.postgresql:postgresql:42.5.4") implementation("org.postgresql:postgresql:42.5.4")
implementation("com.google.guava:guava:31.1-jre") implementation("com.google.guava:guava:31.1-jre")

View File

@ -86,7 +86,7 @@ public class DevTestTenantService {
.scheme("http") .scheme("http")
.numberOfShards("1") .numberOfShards("1")
.numberOfReplicas("5") .numberOfReplicas("5")
.indexName("indexname") .indexPrefix("index_prefix")
.build()) .build())
.s3StorageConnection(S3StorageConnection.builder().key("minioadmin").secret("minioadmin").bucketName("redaction").endpoint("http://localhost:9000").build()) .s3StorageConnection(S3StorageConnection.builder().key("minioadmin").secret("minioadmin").bucketName("redaction").endpoint("http://localhost:9000").build())
.build(); .build();

View File

@ -34,7 +34,7 @@ public class SearchConnectionEntity {
private String numberOfShards; private String numberOfShards;
@Column(name = "search_number_of_replicas") @Column(name = "search_number_of_replicas")
private String numberOfReplicas; private String numberOfReplicas;
@Column(name = "search_index_name") @Column(name = "search_index_prefix")
private String indexName; private String indexPrefix;
} }

View File

@ -91,7 +91,8 @@ public class TenantManagementService implements TenantProvider {
log.info("Creating tenant: {}", tenantRequest.getTenantId()); log.info("Creating tenant: {}", tenantRequest.getTenantId());
var jdbcUrl = JDBCUtils.buildJdbcUrlWithSchema(tenantRequest.getDatabaseConnection()); var jdbcUrl = JDBCUtils.buildJdbcUrlWithSchema(tenantRequest.getDatabaseConnection());
validateJdbcUrl(jdbcUrl); validateJdbcUrl(jdbcUrl);
checkIndexName(tenantRequest.getSearchConnection().getIndexName());
var indexPrefix = tenantRequest.getSearchConnection().getIndexPrefix();
TenantEntity tenantEntity = TenantEntity.builder() TenantEntity tenantEntity = TenantEntity.builder()
.tenantId(tenantRequest.getTenantId()) .tenantId(tenantRequest.getTenantId())
@ -114,7 +115,7 @@ public class TenantManagementService implements TenantProvider {
.password(encryptionService.encrypt(tenantRequest.getSearchConnection().getPassword())) .password(encryptionService.encrypt(tenantRequest.getSearchConnection().getPassword()))
.numberOfShards(tenantRequest.getSearchConnection().getNumberOfShards()) .numberOfShards(tenantRequest.getSearchConnection().getNumberOfShards())
.numberOfReplicas(tenantRequest.getSearchConnection().getNumberOfReplicas()) .numberOfReplicas(tenantRequest.getSearchConnection().getNumberOfReplicas())
.indexName(tenantRequest.getSearchConnection().getIndexName()) .indexPrefix(indexPrefix != null ? indexPrefix : TenantContext.getTenantId())
.build()) .build())
.build(); .build();
@ -401,7 +402,7 @@ public class TenantManagementService implements TenantProvider {
var searchConnection = tenantRequest.getSearchConnection(); var searchConnection = tenantRequest.getSearchConnection();
if (searchConnection != null) { if (searchConnection != null) {
checkIndexName(searchConnection.getIndexName()); var indexPrefix = searchConnection.getIndexPrefix();
tenantEntity.setSearchConnection(SearchConnectionEntity.builder() tenantEntity.setSearchConnection(SearchConnectionEntity.builder()
.hosts(searchConnection.getHosts()) .hosts(searchConnection.getHosts())
.port(searchConnection.getPort()) .port(searchConnection.getPort())
@ -410,7 +411,7 @@ public class TenantManagementService implements TenantProvider {
.password(encryptionService.encrypt(searchConnection.getPassword())) .password(encryptionService.encrypt(searchConnection.getPassword()))
.numberOfShards(searchConnection.getNumberOfShards()) .numberOfShards(searchConnection.getNumberOfShards())
.numberOfReplicas(searchConnection.getNumberOfReplicas()) .numberOfReplicas(searchConnection.getNumberOfReplicas())
.indexName(searchConnection.getIndexName()) .indexPrefix(indexPrefix != null ? indexPrefix : TenantContext.getTenantId())
.build()); .build());
} }
@ -488,8 +489,6 @@ public class TenantManagementService implements TenantProvider {
authDetails.setClientRoles(roleMapping.getPermissions()); authDetails.setClientRoles(roleMapping.getPermissions());
authDetails.setRealmRoles(roleMapping.getAllRoles()); authDetails.setRealmRoles(roleMapping.getAllRoles());
checkIndexName(entity.getSearchConnection().getIndexName());
var tenantResponse = TenantResponse.builder() var tenantResponse = TenantResponse.builder()
.tenantId(entity.getTenantId()) .tenantId(entity.getTenantId())
.displayName(entity.getDisplayName()) .displayName(entity.getDisplayName())
@ -514,7 +513,7 @@ public class TenantManagementService implements TenantProvider {
.numberOfShards(entity.getSearchConnection().getNumberOfShards()) .numberOfShards(entity.getSearchConnection().getNumberOfShards())
.numberOfReplicas(entity.getSearchConnection().getNumberOfReplicas()) .numberOfReplicas(entity.getSearchConnection().getNumberOfReplicas())
.password(entity.getSearchConnection().getPassword()) .password(entity.getSearchConnection().getPassword())
.indexName(entity.getSearchConnection().getIndexName()) .indexPrefix(entity.getSearchConnection().getIndexPrefix())
.build()) .build())
.build(); .build();
@ -565,11 +564,4 @@ public class TenantManagementService implements TenantProvider {
} }
} }
private void checkIndexName(String indexName) {
if (indexName == null) {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "You need to provide an index name");
}
}
} }

View File

@ -9,3 +9,5 @@ databaseChangeLog:
file: db/changelog/master/5-add-details-column.changelog.yaml file: db/changelog/master/5-add-details-column.changelog.yaml
- include: - include:
file: db/changelog/master/6-add-index-name-column.changelog.yaml file: db/changelog/master/6-add-index-name-column.changelog.yaml
- include:
file: db/changelog/master/7-change-index-name-to-index-prefix.changelog.yaml

View File

@ -0,0 +1,10 @@
databaseChangeLog:
- changeSet:
id: rename-column-index-name-to-index-prefix
author: ali
changes:
- renameColumn:
columnDataType: TEXT
newColumnName: search_index_prefix
oldColumnName: search_index_name
tableName: tenant

View File

@ -78,7 +78,7 @@ public class TenantsTest extends AbstractTenantUserManagementIntegrationTest {
.port(123) .port(123)
.username("updated_username") .username("updated_username")
.scheme("updated_scheme") .scheme("updated_scheme")
.indexName("indexname") .indexPrefix("index_prefix")
.build()) .build())
.databaseConnection(DatabaseConnection.builder() .databaseConnection(DatabaseConnection.builder()
.database("updated_db") .database("updated_db")

View File

@ -75,7 +75,7 @@ public class TestTenantService {
.username(SpringPostgreSQLTestContainer.getInstance().getUsername()) .username(SpringPostgreSQLTestContainer.getInstance().getUsername())
.password(SpringPostgreSQLTestContainer.getInstance().getPassword()) .password(SpringPostgreSQLTestContainer.getInstance().getPassword())
.build()) .build())
.searchConnection(SearchConnection.builder().hosts(Set.of("localhost")).port(9200).scheme("http").numberOfShards("1").numberOfReplicas("5").indexName("indexname").build()); .searchConnection(SearchConnection.builder().hosts(Set.of("localhost")).port(9200).scheme("http").numberOfShards("1").numberOfReplicas("5").indexPrefix("indexprefix").build());
if (withStorage) { if (withStorage) {
tenantRequest = tenantRequestBuilder.s3StorageConnection(S3StorageConnection.builder() tenantRequest = tenantRequestBuilder.s3StorageConnection(S3StorageConnection.builder()