in common/src/testFixtures/kotlin/org/jetbrains/teamcity/vault/VaultTestUtil.kt [10:25]
fun createNamespaceAndTemplate(vault: VaultDevEnvironment,
factory: ClientHttpRequestFactory,
namespace: String): VaultTemplate {
val template = VaultTemplate(vault.endpoint, namespace, factory, vault.simpleSessionManager)
if (StringUtil.isNotEmpty(namespace)) {
val templateWithoutNamespace = VaultTemplate(vault.endpoint, "", factory, vault.simpleSessionManager)
val exists = templateWithoutNamespace.read("/sys/namespaces/$namespace")
if (exists == null) {
// Add namespace if it doesn't exist
templateWithoutNamespace.write("/sys/namespaces/$namespace", null)
// Add secret backend in namespace with explicit version
template.write("/sys/mounts/secret", "{\"type\": \"kv\", \"options\": {\"version\": \"2\"}}")
}
}
return template
}