Compare commits
1 Commits
main
...
RED-7175-2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2d6fee072b |
@ -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")
|
||||||
|
|||||||
@ -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();
|
||||||
|
|||||||
@ -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;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -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");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -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
|
||||||
|
|||||||
@ -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
|
||||||
@ -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")
|
||||||
|
|||||||
@ -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()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user