Я добавляю значения свойств через мой класс Application следующим образом:
public class Application {
@Loggable
public static void main(String[] args) {
SecretManager secretManager = new SecretManager();
Micronaut.build(null)
.mainClass(Application.class)
.propertySources(PropertySource.of(
"name",
mapOf(
"datasources.default.username", secretManager.getValue(
"DATASOURCES_DEFAULT_USERNAME")
))).start();
}
}
Я хотел бы иметь возможность изменить значение для datasources.default.username в соответствии со средой, выполнив что-то подобное. Следующий код не работает, но есть ли способ сделать что-то подобное?
public class Application {
@Loggable
public static void main(String[] args) {
SecretManager secretManager = new SecretManager();
if(environment == "Dev") {
Micronaut.build(null)
.mainClass(Application.class)
.propertySources(PropertySource.of(
"name",
mapOf(
"datasources.default.username", secretManager.getValue(
"DATASOURCES_DEFAULT_USERNAME")
))).start();
} else {
Micronaut.build(null)
.mainClass(Application.class)
.propertySources(PropertySource.of(
"name",
mapOf(
"datasources.default.username", secretManager.getValue(
"DATASOURCES_CUSTOM_USERNAME")
))).start();
}
}
}
Есть ли способ сделать это?