Skip to content

Commit 296cb3a

Browse files
committed
Addressing review comments
1 parent b8335ea commit 296cb3a

4 files changed

Lines changed: 42 additions & 25 deletions

File tree

janitor-provider/pkg/csp/kind/kind.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,10 @@ func (c *Client) deleteAndVerifyContainer(
169169
return fmt.Errorf("failed to verify container deletion: %w", err)
170170
}
171171

172-
if strings.Contains(string(output), containerName) {
173-
return fmt.Errorf("container %s still exists after deletion attempt", containerName)
172+
for _, line := range strings.Split(strings.TrimSpace(string(output)), "\n") {
173+
if line == containerName {
174+
return fmt.Errorf("container %s still exists after deletion attempt", containerName)
175+
}
174176
}
175177

176178
return nil

store-client/pkg/client/postgresql_changestream.go

Lines changed: 29 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -383,28 +383,43 @@ func (w *PostgreSQLChangeStreamWatcher) matchesPipeline(entry *postgresqlEvent)
383383
}
384384

385385
for _, stage := range w.pipeline {
386-
matchFilter, ok := stage["$match"]
387-
if !ok {
388-
continue
386+
if !w.matchesStage(stage, entry) {
387+
return false
389388
}
389+
}
390390

391-
matchMap, ok := matchFilter.(map[string]interface{})
392-
if !ok {
393-
continue
394-
}
391+
return true
392+
}
395393

396-
if opType, ok := matchMap["operationType"]; ok {
397-
expectedOps := mapOperationTypes(opType)
398-
if len(expectedOps) == 0 || !slices.Contains(expectedOps, entry.operation) {
399-
return false
400-
}
401-
}
394+
func (w *PostgreSQLChangeStreamWatcher) matchesStage(
395+
stage map[string]interface{}, entry *postgresqlEvent,
396+
) bool {
397+
matchFilter, ok := stage["$match"]
398+
if !ok {
399+
return true
400+
}
401+
402+
matchMap, ok := matchFilter.(map[string]interface{})
403+
if !ok {
404+
return true
405+
}
402406

403-
if entry.newValues != nil && !w.matchesFilters(matchMap, entry.newValues) {
407+
if opType, ok := matchMap["operationType"]; ok {
408+
expectedOps := mapOperationTypes(opType)
409+
if len(expectedOps) == 0 || !slices.Contains(expectedOps, entry.operation) {
404410
return false
405411
}
406412
}
407413

414+
values := entry.newValues
415+
if values == nil {
416+
values = entry.oldValues
417+
}
418+
419+
if values == nil || !w.matchesFilters(matchMap, values) {
420+
return false
421+
}
422+
408423
return true
409424
}
410425

store-client/pkg/config/env_loader.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -192,12 +192,12 @@ func NewDatabaseConfigWithCollection(
192192
// Load required MongoDB environment variables
193193
connectionURI, err := getRequiredEnv(EnvMongoDBURI)
194194
if err != nil {
195-
return nil, err
195+
return nil, fmt.Errorf("failed to load MONGODB_URI: %w", err)
196196
}
197197

198198
databaseName, err := getRequiredEnv(EnvMongoDBDatabaseName)
199199
if err != nil {
200-
return nil, err
200+
return nil, fmt.Errorf("failed to load MONGODB_DATABASE_NAME: %w", err)
201201
}
202202

203203
// Determine which collection environment variable to use
@@ -243,17 +243,17 @@ func NewDatabaseConfigWithCollection(
243243
func newPostgreSQLCompatibleConfig(certMountPath, tableEnvVar, defaultTable string) (DatabaseConfig, error) {
244244
host, err := getRequiredEnv("DATASTORE_HOST")
245245
if err != nil {
246-
return nil, err
246+
return nil, fmt.Errorf("failed to load DATASTORE_HOST: %w", err)
247247
}
248248

249249
database, err := getRequiredEnv("DATASTORE_DATABASE")
250250
if err != nil {
251-
return nil, err
251+
return nil, fmt.Errorf("failed to load DATASTORE_DATABASE: %w", err)
252252
}
253253

254254
username, err := getRequiredEnv("DATASTORE_USERNAME")
255255
if err != nil {
256-
return nil, err
256+
return nil, fmt.Errorf("failed to load DATASTORE_USERNAME: %w", err)
257257
}
258258

259259
port := getEnvWithDefault("DATASTORE_PORT", "5432")
@@ -436,12 +436,12 @@ func getPositiveIntEnvVarWithFallback(preferredName, legacyName string, defaultV
436436
func TokenConfigFromEnv(clientName string) (TokenConfig, error) {
437437
tokenDatabase, err := getRequiredEnv(EnvMongoDBDatabaseName)
438438
if err != nil {
439-
return TokenConfig{}, err
439+
return TokenConfig{}, fmt.Errorf("failed to load MONGODB_DATABASE_NAME: %w", err)
440440
}
441441

442442
tokenCollection, err := getRequiredEnv(EnvMongoDBTokenCollectionName)
443443
if err != nil {
444-
return TokenConfig{}, err
444+
return TokenConfig{}, fmt.Errorf("failed to load MONGODB_TOKEN_COLLECTION_NAME: %w", err)
445445
}
446446

447447
return TokenConfig{

store-client/pkg/datastore/providers/postgresql/database_client.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -872,7 +872,7 @@ func (c *PostgreSQLDatabaseClient) FindOne(
872872

873873
whereClause, args, err = c.resolveFilterMapForFind(filter)
874874
if err != nil {
875-
return nil, err
875+
return nil, fmt.Errorf("resolving filter for FindOne: %w", err)
876876
}
877877
}
878878

@@ -921,7 +921,7 @@ func (c *PostgreSQLDatabaseClient) Find(
921921

922922
whereClause, args, err = c.resolveFilterMapForFind(filter)
923923
if err != nil {
924-
return nil, err
924+
return nil, fmt.Errorf("resolving filter for Find: %w", err)
925925
}
926926
}
927927

0 commit comments

Comments
 (0)