in aws-parameterstore/secret-supplier/SecretSupplier.scala [18:36]
def loadState(): SnapshotProvider = {
val latestValue = ssmClient.fetchValues(Seq(parameterName)).head
val latestVersion = latestValue.metadata.version
val state = latestVersion match {
case InitialVersion => InitialSecret(latestValue.value)
case _ =>
val previousVersion = latestVersion - 1
val previousValue = ssmClient.fetchValues(Seq(s"$parameterName:$previousVersion")).head
TransitioningSecret(
oldSecret = previousValue.value,
newSecret = latestValue.value,
overlapInterval =
transitionTiming.overlapIntervalForSecretPublishedAt(latestValue.metadata.lastModified)
)
}
logger.info(s"Fetched Secret state: ${state.snapshot().description}")
state
}