Skip to content

Commit

Permalink
changed params to use immutable List
Browse files Browse the repository at this point in the history
  • Loading branch information
Dinn Diallo committed Feb 23, 2024
1 parent 96bcd78 commit b073eb6
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 12 deletions.
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
import tanvd.kosogor.proxy.publishJar

group = "tanvd.konfy"
version = "0.1.25.103"
version = "0.1.25.104"

plugins {
id("tanvd.kosogor") version "1.0.18" apply true
Expand Down
14 changes: 5 additions & 9 deletions konfy-ssm/src/main/kotlin/tanvd/konfy/ssm/SsmProvider.kt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ import tanvd.konfy.conversion.ConversionService
import tanvd.konfy.provider.ConfigProvider
import java.lang.reflect.Type

private const val KONFY_LOG_KEYS = "KONFY_LOG_KEYS"

/**
* Provider takes values from AWS SSM.
* Each key will be prepended with a prefix (with a slash after it) -- "${prefix}/${key}"
Expand All @@ -20,12 +22,12 @@ class SsmProvider(private val prefix: String?, private val separator: String,
private val convert: (String, Type) -> Any? = ConversionService::convert) : ConfigProvider() {

private val logger = LoggerFactory.getLogger(SsmProvider::class.java)
val konfyLogKeys = getEnvOrProperty("KONFY_LOG_KEYS")
private val konfyLogKeys = (System.getenv(KONFY_LOG_KEYS) ?: System.getProperty(KONFY_LOG_KEYS))
?.split(",")
?.map { it.trim() }.orEmpty()

init {
logger.info("SsmProvider initialized.")

konfyLogKeys.addAll(listOf("kara.classpath", "kara.routePackages", "kara.environment", "kara.parameters.logging.masked"))
logger.info("Konfy log keys: $konfyLogKeys")
}

Expand All @@ -42,12 +44,6 @@ class SsmProvider(private val prefix: String?, private val separator: String,
}
}

private fun getEnvOrProperty(key: String): MutableList<String> = (System.getenv(key) ?: System.getProperty(key))
?.split(",")
?.map { it.trim() }
?.toMutableList()
?: mutableListOf()

private fun log(key: String) {
if (konfyLogKeys.contains(key)) {
val stackTrace = Thread.currentThread().stackTrace.joinToString("\n")
Expand Down
6 changes: 4 additions & 2 deletions konfy-ssm/src/test/kotlin/SsmProviderTest.kt
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,14 @@ class SsmProviderTest {
@Test
fun shouldPrintCorrectLogMessage() {
val oldOut = System.out
val konfyLogKeysParam = "KONFY_LOG_KEYS"
try {
//given
val key = "testKey"
System.setProperty(konfyLogKeysParam, key)
val logMessage = "Fetching parameter with key: $key \n Stack trace:"
val management: AWSSimpleSystemsManagement = mockk(relaxed = true)
val provider: SsmProvider = SsmProvider(null, ".", management)
provider.konfyLogKeys.add(key)
val provider = SsmProvider(null, ".", management)

val consoleOutput = ByteArrayOutputStream()
val ps = PrintStream(consoleOutput)
Expand All @@ -29,6 +30,7 @@ class SsmProviderTest {

//then
} finally {
System.clearProperty(konfyLogKeysParam)
System.setOut(oldOut)
}
}
Expand Down

0 comments on commit b073eb6

Please sign in to comment.